sql serve存储过程

存储过程
一.概念:预先编译好的sql程序,可以包含:操作数据、变量、控制语句,增删改查操作都可以,存储过程是保存在数据库中      的一个对象。
二.好处:
         1.安全性更高
         2.减少了网络流量
         3.提高速度,性能更高
         4.模块化编程
三、分类
   1.系统存储过程:由数据库创建的,“sp_”开头,常用的系统存储过程:
        (1)sp_helpdatabases;列出所有的数据库
        (2)sp_helpdb:列出指定的数据库信息
        (3)sp_help:列出指定的表的信息
        (4)sp_helptext:列出指定对象文本信息
   2.扩展存储过程:
         由其他语言创建,完成数据库以外的功能,以“xp_”开头,以dll文件形式存放
   3.用户自定义的存储过程
         用户在自己的数据库中创建的
四、创建存储过程
     create proc 存储过程名
       @参数1 数据类型,        --默认表示输入参数
       @参数2 数据类型 output,--表示输出参数
       @参数3 数据类型=值      --添加默认值,也叫可选参数
     as
         sql 语句

    1.无参数:create proc 存储过程名
      as  sql 语句
      调用:exec 存储过程名
    2.带输入的参数
      create proc 存储过程名
        @参数1 数据类型,
        @参数2 数据类型=默认参数
     as   sql 语句
      调用:
        exec 存储过程名 参数值1,参数值2,参数值按照位置给存储过程中的参数传值
        exec 存储过程名 参数值1,第二个参数取默认值
        exec 存储过程名 @参数2=参数值2,@参数1=参数值1,指定参数名方式调用,参数顺序可以是任意的
    3.带输出的参数
           create proc 存储过程名
        @参数1 数据类型,
        @参数2 数据类型  output--输出参数
     as   sql 语句
       调用:exec 存储过程名 参数值1,@变量 output
       输出参数从存储过程中向外传值,调用时传递一个变量,要有output
    4.有返回值的
      creeate proc 存储过程名
        as
          sql 语句
        return 整型数据(0或者1)
     调用 exec @变量=存储过程名
    5.错误处理

原文地址:https://www.cnblogs.com/a1111/p/6540368.html