其实很容易的SQL SERVER存储过程和触发器

Posted 天涯羁客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了其实很容易的SQL SERVER存储过程和触发器相关的知识,希望对你有一定的参考价值。

1、变量的声明和使用

  declare @var as varchar(50)

  set var=‘abcd‘

2、IF循环

if isnull(@prjid,0)=0 
 begin
  print ‘没有找到prjid!!!‘
  return
 end
else

  begin

   --必须在这里写一些代码,否则会报错。

  end

3、游标的使用

  1. declare curJD cursor for 
  2.     select id,fzbh from _tzk
  3. open curJD
  4. fetch next from curJD into @jdID,@paperno
  5. while @@FETCH_STATUS=0
  6. BEGIN
  7.   --这里是一些处理代码
  8.   fetch next from curJD into @jdID,@paperno
  9. END
  10. close curJD
  11. deallocate curJD

4、触发器的使用

关键在于inserted表和deleted表的使用

  1. ALTER   TRIGGER  RoleInsert  ON [dbo].[roleName] 
  2. AFTER  INSERT
  3. AS
  4. declare @RoleID as bigint
  5. set @RoleID=(select roleid from inserted)
  6. insert into rolerule (roleid,menuid,pw) 
  7. select @roleid,menuid,0 from menus where menus.menuid not in 
  8. (select menuid from rolerule where ro[email protected]
  9. update rolerule set pw=1 where menuid in (select menuid from menus where always=1)
  10.     and roleid in (select roleid from inserted)

然后有了这几个例子,其它的就是熟练的一个过程了






以上是关于其实很容易的SQL SERVER存储过程和触发器的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 存储过程和触发器

SQL Server T—SQL 存储过程 触发器

数据库原理与应用(SQL Server)笔记 第九章 存储过程和触发器

sqlserver存储过程 限制字段长度

遍历SQL SERVER中所有存储过程和触发器

SQL Server 触发器