我试图使用相同的更新语句更新两列可以这样做吗?
IF V_COUNT = 9 THEN
UPDATE INVOICE
SET INV_DISCOUNT = DISC3 * INV_SUBTOTAL
, INV_TOTAL = INV_SUBTOTAL - INV_DISCOUNT
WHERE INV_ID = I_INV_ID;
DBMS_OUTPUT.PUT_LINE ('YOU QUALIFY FOR A DISCOUNT OF 30%');
Run Code Online (Sandbox Code Playgroud)
问题是INV_TOTAL没有更新,只有inv_discount
DISC3 = 0.3 IE 30%的折扣,所以sub_total将乘以0.3,这是INV_discount的值
INV_TOTAL = sub_total - 折扣
INV_ID|INV_DATETIME |INV_SUBTOTAL|INV_DISCOUNT| INV_TOTAL
----------|------------------------------|------------|------------|-----------
100|14-NOV-12 09.40.06.918000 | $.00| $.00| $.00
101|18-MAR-12 10.03.00.000000 | $.00| $.00| $.00
102|18-MAR-12 10.15.00.000000 | $.00| $.00| $.00
103|18-MAR-12 10.55.00.000000 | $80.00| $8.00| $72.00
104|18-MAR-12 10.38.00.000000 | $.00| $.00| $.00 …Run Code Online (Sandbox Code Playgroud) 假设我有一个分支dev,我想放弃在分支提交范围内对一组文件所做的所有更改,dev因为它偏离了master.如果此范围内的提交仅触及我喜欢的那些文件,则会将其修剪掉.我得到的最接近的是:
git checkout dev
git filter-branch --force --tree-filter 'git checkout master -- \
a/b/c.png \
...
' --prune-empty -- master-dev-older-ancestor..HEAD
Run Code Online (Sandbox Code Playgroud)
但这有这些缺点
error: pathspec 'a/b/c.png' did not match any file(s) known to git.我可能会决定git checkout master-dev-older-ancestor但是,dev以后的某个位置从根本的一点是,我不想让Git签文件的特定版本-我想告诉git的过滤所有提交的范围 master-dev-older-ancestor..HEAD有在所有更改任意文件集(目前在主任何地方或没有)丢弃.
那我怎么告诉git?
Python 3.10 不这么认为:
Python 3.10.6 | packaged by conda-forge | (main, Aug 22 2022, 20:38:29) [Clang 13.0.1 ] \
on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from typing import Iterable
>>> isinstance(list[str], Iterable)
False
>>> list(list[str])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'types.GenericAlias' object is not iterable
Run Code Online (Sandbox Code Playgroud)
Python 3.11 认为它是:
Python 3.11.0 | packaged by conda-forge | (main, Jan 15 2023, 05:44:48) [Clang 14.0.6 ] \
on darwin
Type …Run Code Online (Sandbox Code Playgroud) 我基于类似的代码库有多个不同的闭源项目,每一天我都需要将更改和修复从一个复制到另一个并返回.
由于我的一些项目分散太多而无法使用git子模块,而在其他项目中,我不希望我的客户弄乱子模块,因此我现在可以查看我在其他项目上的工作git patch,git apply这是一项繁琐的工作.
我将考虑切换到我的机器上的本地存储库之间,git pull然后git push使用git cherry-pick并git merge获取所需的更改,但是如果有更好的方法吗?
每当我尝试添加此行时,它都会崩溃我的应用.我不把它放在正确的位置吗?
preferences.registerOnSharedPreferenceChangeListener(myActivity.this);
Run Code Online (Sandbox Code Playgroud)
这是我的课
class Simulation extends View {
// I declare my program variables here
public Simulation(Context context) {
super(context);
// get the preferences
SharedPreferences preferences = PreferenceManager
.getDefaultSharedPreferences(context);
preferences
.registerOnSharedPreferenceChangeListener(myActivity.this);
String storedPreference = preferences.getString("nPref", "0");
}
public void onSharedPreferenceChanged(
SharedPreferences sharedPreferences, String key) {
Log.i(TAG, "preferences changed!");
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
crash android android-custom-view android-preferences sharedpreferences
我有一个看起来像这样的intent过滤器:
<activity
android:name="com.test.Call"
android:label="@string/makeCall" >
<intent-filter>
<action android:name="android.intent.action.CALL" />
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.CALL_PRIVILEGED" />
<data android:scheme="tel" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
这很好用,当你尝试拨打电话时,我的文字显示为其中一个选项.我想要做的是处理被呼叫的号码并询问用户一些问题,然后继续通话.我通过在执行任何处理之后运行以下代码来执行此操作:
Uri phoneCall = Uri.parse("tel:" + numToCall);
Intent caller = new Intent(Intent.ACTION_DIAL, phoneCall);
startActivity(caller);
Run Code Online (Sandbox Code Playgroud)
问题是,它从头开始显示相同的选项(本机调用者和我的意图过滤器).这不是我想要的,我想绕过我的意图过滤器并直接转到本机调用者.有没有办法做到这一点?如何强制意图直接转到本地调用者?我正在考虑将其移动到广播接收器,但宁愿走这条路.
谢谢
当我点击播放按钮播放歌曲并将歌曲mp3与它捆绑在一起并在onStartCommand中接收时,我开始服务.问题是当我启动服务的活动结束时,我的服务再次调用onStartCommand.当它接收该捆绑时它不存在,因为这次活动没有启动它.因此,我在准备媒体播放器时遇到了非法的例外情况.我没有约束我的服务.
为什么在我的活动结束时会调用onStartCommand?
启动服务:
Intent i = new Intent(SongList.this,MyService.class);
i.putExtra("songURL", user.songurlz);
i.putExtra("songNAME", songplay_name);
startService(i);
Run Code Online (Sandbox Code Playgroud)
服务类:
public class MyService extends Service {
static MediaPlayer mediaPlayer;
static int pauseplay;
static NotificationManager notificationManagerPlay;
static CharSequence tickerText;
static Notification notification4;//Notification variable(for song playing)
TelephonyManager telephonyManager;
PhoneStateListener listener;
static Notification notification;
static NotificationManager mNotificationManager;
String songurl;
String songname;
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
super.onCreate();
mediaPlayer = new MediaPlayer();
pauseplay = 1;
MainMenu.serviceRunning …Run Code Online (Sandbox Code Playgroud) 我们最近迁移到Servlet API 3.0.由于我们正在开发一个有时需要进行一些更改web.xml的框架,因此基于我们框架的项目需要web.xml在框架发生变化时更新它们.
Servlet API 3.0引入了新的Web碎片,使这种行为更加松散耦合和动态.我创建了一个web-fragment.xml并从那里的web.xml中移动所有东西.因此,项目现在只需要定义以下内容web.xml和它们自己的附加声明.
<?xml version="1.0" encoding="UTF-8"?>
<web-app
version="3.0"
metadata-complete="false"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
</web-app>
Run Code Online (Sandbox Code Playgroud)
我们必须使用metadata-complete="false"在JAR中启用Fragment搜索(我们的框架具有web-fragment.xmlin META-INF/.
由于我们对其他框架和库(大约80-90)有许多依赖关系,并且metadata-complete="false"还触发搜索注释,因此搜索所有库需要12秒才能达到不可接受的时间.
这个机制很有效,我喜欢这样一个事实,即我们与框架的联系更加紧密,但启动时间是致命的!此外,我们必须增加Tomcat的可用内存,-Xms256m -Xmx512m以便-Xms512m -Xmx1024m在没有得到它的情况下启动它java.lang.OutOfMemoryError: Java heap space(由Tomcat的低效实现的注释处理器引起(大约有50.000个类被缓存)).
我知道我们可以禁用库中的注释搜索,但由于我们主要使用没有metadata-complete="true"标志的第三方,因此这也不是一个选项.
我们可以做任何事情来禁用搜索注释吗?或者我们可以强制Servlet容器只搜索声明的库中的web-fragment.xml?
我真的想使用新的网络片段功能,但随着启动时间和内存的增加,这是不可能的.
我设法为我的电影插入工作人员 - 现在我想以正确的方式做到这一点.实体(缩写):
@Entity
@Table(name = "movies")
public class Movie implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int idmovie;
// bi-directional many-to-one association to MoviesHasCrew
@OneToMany(mappedBy = "movy", cascade = CascadeType.PERSIST)
private List<MoviesHasCrew> moviesHasCrews;
}
@Entity
@Table(name = "movies_has_crew")
public class MoviesHasCrew implements Serializable {
@EmbeddedId
@GeneratedValue(strategy = GenerationType.IDENTITY)
private MoviesHasCrewPK id;
// bi-directional many-to-one association to Crew
@ManyToOne
@JoinColumn(name = "crew_idcrew", columnDefinition = "idcrew")
@MapsId("crewIdcrew")
private Crew crew;
// bi-directional many-to-one association to Movy
@ManyToOne
@JoinColumn(name = "movies_idmovie") …Run Code Online (Sandbox Code Playgroud) 我开始乱搞git filter-branch.--all选项重写所有分支和标记.凉. git filter-branch创建它覆盖refs/original的所有引用的备份.很酷.现在我想把我所有的实验都filter-branch吹走.
有没有一种简单的方法来完全撤消效果git filter-branch <whatever filter> -- --all?即将所有重写的分支一次性恢复到原始状态?
如果没有预先存在的方式,应该有.如果没有预先存在的方式,是否有人会有一个简短的脚本来执行此操作?
显然有一些解决方法.我可以手动恢复它,一次一个分支,就像在这个问题中一样.或者我可以直接核对并重新克隆.要么在一个包含许多分支/标签的回购中快速繁琐,要么(比如说)被分成更小的回购.