oracle 防止插入重复数据

有时候用oracle的数据库,插入数据的时候需要判断一下该条数据是否已经存在。

我们的第一思路如下,首先执行下面这个sql:

 

[sql]  view plain  copy
  1. select count(*) isExists from t_test_lll;  

 

然后判断isExists等于0与否,如果等于0,则执行insert。

上面这样写,也可以,但是多写很多代码,不利于后期维护。

其实oracle可以内置在insert语句中进行判断,如下sql:

 

[sql]  view plain  copy
  1. insert  
  2. when (not exists (select 1 from t_test_lll where id = '111')) then  
  3. into t_test_lll(id) select '111' from dual;  


这样,当数据库里有一个id='111'的记录的时候,就不会进行insert操作了。

猜你喜欢

转载自blog.csdn.net/u010803748/article/details/80759031
今日推荐