a9 发帖数: 21638 | 1 begin transaction
select top 1 * from tablea with(tablock,xlock) where a.id=12
if @@rowcount=0 then
insert into tablea (id,status) values(12,0)
end if
commit transaction |
B*****g 发帖数: 34098 | 2 不是说mysql没有SP吗?
【在 a9 的大作中提到】![](/moin_static193/solenoid/img/up.png) : begin transaction : select top 1 * from tablea with(tablock,xlock) where a.id=12 : if @@rowcount=0 then : insert into tablea (id,status) values(12,0) : end if : commit transaction
|
a9 发帖数: 21638 | 3 好像有哦。
其实我就是要实现防重复插入,应该怎么做啊?
【在 B*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 不是说mysql没有SP吗?
|
B*****g 发帖数: 34098 | 4 还真的有,看着很像oracle
【在 a9 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 好像有哦。 : 其实我就是要实现防重复插入,应该怎么做啊?
|
a9 发帖数: 21638 | 5 好像这样插入
insert ignore into menus(id,label,url) values(4,'Contact us','contactus.html
');
你在sql server或者oracle里是怎么防止重复插入的?
【在 B*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 还真的有,看着很像oracle
|
B*****g 发帖数: 34098 | 6 create unique contraint/key/index
html
【在 a9 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 好像这样插入 : insert ignore into menus(id,label,url) values(4,'Contact us','contactus.html : '); : 你在sql server或者oracle里是怎么防止重复插入的?
|
a9 发帖数: 21638 | 7 那不抛异常了嘛。
【在 B*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : create unique contraint/key/index : : html
|
b******g 发帖数: 81 | 8 CATCH
【在 a9 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 那不抛异常了嘛。
|
g******3 发帖数: 115 | 9 据说5.0版本开始有了
【在 B*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 不是说mysql没有SP吗?
|
g******3 发帖数: 115 | 10 据说5.0版本开始有了
【在 B*****g 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 不是说mysql没有SP吗?
|