zoukankan      html  css  js  c++  java
  • 其实很容易的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 roleid=@roleid) 
    9. update rolerule set pw=1 where menuid in (select menuid from menus where always=1)
    10.     and roleid in (select roleid from inserted)

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

  • 相关阅读:
    斯坦福机器学习实现与分析之二(线性回归)
    理解Kalman滤波的使用
    浅谈程序优化
    2014年,我学到了什么
    运动目标跟踪中kalman滤波器的使用
    图像水波纹特效原理分析和实现
    Redis与memached的区别
    Freemarker讲解
    Java基础知识总结
    Java中GC的工作原理
  • 原文地址:https://www.cnblogs.com/zhanzhan/p/7680929.html
Copyright © 2011-2022 走看看