4、存储过程操作:
--1、创建存储过程 --语法结构: --Create Proc 过程名称 --@Parameter 参数类型 --[,@Parameter 参数类型output] --As --Begin --.... --end --不带参数 create proc newProc as begin declare @str varchar(50); set @str='123456'; print @str; end --带参数 create procedure newProc2 @testStr varchar(50),--若只有一个参数则不用逗号 @testStr2 varchar(50) As begin print '第一个参数的值为:'+@testStr; print '第二个参数的值为:'+@testStr2; end --带输出值 create procedure newProc3 @test int, @test2 int, @testSum int output as begin set @testSum = @test+@test2; end --2、执行存储过程 --语法结构:exec|execute proc|procedure procedureName [parameters]; exec newProc;--不带参数,也没有返回值 exec newProc2 '123456','ABCDEFG';--带参数,没有返回值 --带参数,有返回值 declare @testSum int; set @testSum=100; print @testSum; exec newProc3 10,20,@testSum output; print @testSum; --3、查看存储过程: select * from sysobjects where xtype='P' --或者 SELECT name, definition FROM sys.sql_modules AS m INNER JOIN sys.all_objects AS o ON m.object_id = o.object_id WHERE o.[type] = 'P' --xtype可替换为如下参数: --C = CHECK 约束 --D = 默认值或 DEFAULT 约束 --F = FOREIGN KEY 约束 --L = 日志 --FN = 标量函数 --IF = 内嵌表函数 --P = 存储过程 --PK = PRIMARY KEY 约束(类型是 K) --RF = 复制筛选存储过程 --S = 系统表 --TF = 表函数 --TR = 触发器 --U = 用户表 --UQ = UNIQUE 约束(类型是 K) --V = 视图 --X = 扩展存储过程 --4、修改存储过程 --修改与创建语法结构一致,就是将创建的create关键字修改成alter关键字即可,至于业务逻辑可以根据实际情况修改。 alter proc newProc as begin declare @str varchar(50); set @str='123abc'; print @str; end --5、重命名存储过程名称 --语法结构:exec sp_rename '存储过程的原名称','存储过程的新名称'; exec sp_rename 'newProc','newProc1'; --可能会产生警告:更改对象名的任一部分都可能会破坏脚本和存储过程。 --6、删除存储过程 --语法结构:exec procedure 存储过程名称[,存储过程,存储过程]; drop procedure newProc; drop procedure newProc2,newProc3;