|
|
1
37
对于oracle 11.2.0.1,有一个 这可以做到:
第一种方法——直接翻译上述语义提示:
当存在大量争议时,速度比上述两个提示都快:
|
|
|
2
30
ses1:
ses2:
ses1:
ses2:
ses1:
|
|
|
3
23
我们可以把
|
|
|
4
18
这仅在要插入的项目不存在时插入。
在T-SQL中
|
|
|
5
15
如果您不想从其他表合并,而是插入新数据。..我想出了这个。也许有更好的方法吗?
|
|
|
6
5
然后
如果插入的新数据很少,这不是最好的,因为您已经通过线路复制了所有数据。 |
|
|
7
4
我使用了上面的代码。它很长,但很简单,对我来说很有用。类似于迈克尔的代码。 |
|
|
8
1
如果你的表与其他表“独立”(我的意思是,它不会触发级联删除,也不会将任何外键关系设置为null),一个很好的技巧可能是先删除行,然后再插入。它可能是这样的: 从MyTable中删除prop1='aa';//假设它最多只选择一行!
如果你删除了不存在的东西,什么都不会发生。 |
|
|
9
0
这是对erikkallen发表的评论的回答:
好吧,你自己试试,告诉我你是否会遇到同样的错误: ses1:
ses2:
ses1:
ses2:
ses1:
|
|
|
10
0
INSERT INTO schema.myFoo ( primary_key , value1 , value2 )
SELECT 'bar1' AS primary_key ,'baz1' AS value1 ,'bat1' AS value2 FROM DUAL WHERE (SELECT 1 AS value FROM schema.myFoo WHERE LOWER(primary_key) ='bar1' AND ROWNUM=1) is null;
|
|
|
mak101 · SQL开发人员脚本输出到datagrid 8 年前 |
|
|
Caitlin · ORACLE SQL开发人员ORA-00904 8 年前 |
|
|
Asim Minhas · 如何获取表中最后插入的记录? 8 年前 |
|
|
C. Greer · Oracle SQL无法找到错误原因 8 年前 |
|
|
Thelnternet · APEX 4.2验证,至少一行必须有一个值 8 年前 |