如何实现:如果不存在就插入,存在就更新

kylix98 2003-05-18 11:53:25
我有一个SQL语句:
INSERT ... (NAME,VALUE) VALUES('123','321')
我写了一个INSTEAD OF 触发器:
IF NOT EXISTS (SELECT * FROM ... WHERE NAME = '123')
INSERT...
ELSE
UPDATE ... SET VALUE = '321' WHERE NAME = '123'
这种方法可行,但我不知道是否有更高效的方法,因为我的INSERT操作很频繁。
...全文
158 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengdali 2003-05-18
  • 打赏
  • 举报
回复
不用if判断

creatr trigger 名
.....

insert 表 (NAME,VALUE) select NAME,VALUE from inserted where name not in (select name from 表)
update 表 set value=aa.value from inserted as aa where aa.name=表.name

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧