不清楚数据库中是否存在某个数据,例如username有个这个字段,不清楚里面是否有me这个数据,如何用一条语句实现更新或者插入操作,不要先查找在操作
create table saad_test ( pk int not null primary key, data varchar(100) )
insert into saad_test values ( 1, 'saad' )
set nocount on
declare @v_pk int, @v_data varchar(100)
begin
set @v_pk = 1
set @v_data = 'ahmad2'
insert into saad_test values ( @v_pk, @v_data )
-- error for duplicate is 2627
if ( @@ERROR = 2627 )
update saad_test set data = @v_data where pk = @v_pk
end
如果你不先查数据的话,很容易更新数据错误,引起不必要的麻烦,最好是先确认一下,再进行更新操作。
update table set username = me where id=001 这只是个更新的例子,如果你后面不加where的话,就会把所有的数据都更新。
insert into table values("","","","");或insert into table(username) values("me");