MSSQL存储过程
mssql的存储过程里怎么获得一条SQL语句的执行状态是成功还是失败?我想在一张表中增加记录,首先要检查是否已经存在相同记录,如果存在就更新,否则就插入。
我就想先试试插入操作,失败了就去更新,或者先去更新失败了就去插入。我该怎么知道第一条语句是否执行成功呢?
一个存储过程传入多个参数,怎么知道某个参数是否有值传入啊?
SQL code:
1、@@ERROR
2、isnull()
SQL code:
if exists(select 1 from tb where ) --判断是否存在你要查找的记录 如果存在则update
update tb set col=''
else
insert tb values() --如果不存在则插入
SQL code:
CREATE PROC P(@ID INT,@NAME VARCHAR(10))
AS
IF NOT EXISTS(SELECT * from TB T WHERE ID=@ID AND NAME=@NAME)
INSERT TB (ID,NAME)SELECT @ID,@NAME
ELSE
UPDATE TB SET ID=@ID ,NAME=@NAME WHERE 条件
??
、@@ERROR
用这个判断是否成功
也可以用@@ROWCOUNT来判断
SQL code:
不过觉得你这个应该是触发器来方便
CREATE TRIGGER TRI ON TB
INSTEAD OF INSERT
AS
IF NOT EXISTS(SELECT * from TB T WHERE EXISTS(SELECT
相关问答:
在ms sqlserver中,取满足条件的前几行可以使用select top语句,但在oracle中并没有这样的语句,
我从网上看到了一种实现
select * (select * from talbename) where rownum <=100 order by rownum as ......
MSSQL$SQLEXPRESS 无法启动.. 知道如何处理的请帮帮忙 谢谢
看看错误日志
提示什么错误?
http://blog.csdn.net/fredrickhu/archive/2009/09/20/4573408.aspx
......
asp+mssql如何让一个表按另一个表的条件进行查询呢?
比如 表1 有
1
2
3
3条数据
表2有
1 10
2 30
3 5
我想让表1按表2来降序排列,该如何写呢?
2 ......
如题,想将我以前做过的网站放在网上给人看,由于是ms sql的,大多数网络商的虚拟主机是要收费的,
想打包后放在一些免费的空间,让人家自己下载去看,所以希望打过包后的数据库的表不让客户看到,
或者是加过 ......
一个数据库表 里面的字段有 VIP用户A类 VIP用户b类 VIP用户c类 VIP用户d类 VIP用户e类 VIP用户f类 。。。
里面的数据都是电话号码 ......