SQL简单存储过程的创建

存储过程只在创建时编译,在调用时无需编译,而一般的SQL语句在每一次的调用都要进行编译,所以存储过程可以提高数据库执行速度。减少网络流量的使用。而且存储过程可以重复使用。


存储过程的语法如下


create procedure sp_name

@[参数名] [类型],@[参数名] [类型]

[with recompile][with encryption][with recompile,encryption]

as
begin

.....SQL语句....
end

recompile:表示每次执行此存储过程时都重新编译一次

encryption:所创建的存储过程的内容会被加密


创建一个简单的存储过程实例。

use superMarket
go
if object_id('proc_comm_sup','p') is not null
drop procedure proc_comm_sup
go
create procedure proc_comm_sup
@supplierName varchar(50),
@supplierCode varchar(32)
as
select * from tblCommodity C
  join tblSupplier S
    on C.SupplierCode=S.Code
 where C.SupplierCode=@supplierCode
    or C.SupplierName=@supplierName
go


exec proc_comm_sup 造纸中心,zgzz


附:

OBJECT_ID ( '[ database_name . [ schema_name ] . | schema_name . ] 
    object_name' [ ,'object_type' ] )


Object type:
AF = Aggregate function (CLR)
C = CHECK constraint
D = DEFAULT (constraint or stand-alone)
F = FOREIGN KEY constraint
FN = SQL scalar function
FS = Assembly (CLR) scalar-function
FT = Assembly (CLR) table-valued function
IF = SQL inline table-valued function
IT = Internal table
P = SQL Stored Procedure
PC = Assembly (CLR) stored-procedure
PG = Plan guide
PK = PRIMARY KEY constraint
R = Rule (old-style, stand-alone)
RF = Replication-filter-procedure
S = System base table
SN = Synonym
SQ = Service queue
TA = Assembly (CLR) DML trigger
TF = SQL table-valued-function
TR = SQL DML trigger 
U = Table (user-defined)
UQ = UNIQUE constraint
V = View
X = Extended stored procedure

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值