你sqlserver什么版本?
2008以上的话可以采用meger into 来解决,不需要存储过程
Merge Into 被更新的表 p--从数据源查找编码相同的产品
using 主表 s on p.关联字段=s.关联字段
--如果编码相同,则更新目标表的名称
When Matched Then Update set P.某字段=s.某字段
--如果目标表中不存在,则从数据源插入目标表
When Not Matched Then Insert (字段1,字段2,字段3...) values (字段1,字段2,字段3...)
use databasenamego
if exists(select name from sysobjects where name='tablename')
create table word_table(创建的表的所有属性)
go
--databasename就是你的数据库的名称
--tablename就是你的数据库下面的表的名称
创建测试表
create table test(id int,
price int)
创建存储过程
create proc p_test(@id int)
as
declare @count int
select @count=count(*) from test where id=@id
if @count=0
begin
insert into test(id) values (@id)
select @id
end
else
begin
select @id
end
调用存储过程
declare@id int
exec p_test 5 --这个5就是比如你要输入的那个id
结果你就自己验证吧,我这没问题了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)