存储过程入门
Create procedure procedue_name [@parameter data_type][output] [with]{recompile|encryption} as sql_statement 数据挖掘工具
解释 output:表示此参数是可传回的. with {recompile|encryption} recompile:表示每次执行此存储过程时都重新编译一次 encryption:所创建的存储过程的内容会被加密 数据挖掘研究院
数据挖掘交友
表book的内容如下 数据挖掘研究院
编号 书名 价格
001 C语言入门 $30 数据挖掘论坛
002 PowerBuilder报表开发 $52 数据挖掘交友
实例1:查询表Book的内容 数据挖掘论坛
create proc query_book as select * from book go exec query_book 数据挖掘工具
实例2:加入一笔记录到表book,并查询此表中所有书籍的总金额 数据挖掘工具
Create proc insert_book 数据挖掘论坛
@param1 char(10),@param2 varchar(20),@param3 money,@param4 money output 数据挖掘工具
with encryption ---------加密 数据挖掘交友
as
insert book(编号,书名,价格) Values(@param1,@param2,@param3) select @param4=sum(价格) from book go 数据挖掘交友
执行例子: declare @total_price money exec insert_book "003","Delphi 开发指南",$100,@total_price print "总金额为"+convert(varchar,@total_price) go 数据挖掘实验室
实例3:设有两个表为Product,Order,其表内容如下: Product 产品编号 产品名称 客户订数 001 钢笔 30 002 毛笔 50 003 铅笔 100 Order 产品编号 客户名 客户订金 001 南山区 $30 002 罗湖区 $50 003 宝安区 $4 请实现按编号为连接条件,将两个表连接成一个临时表,该表只含编号.产品名.客户名.订金.总金额, 总金额=订金*订数,临时表放在存储过程中 数据挖掘研究院
代码如下: Create proc temp_sale as select a.产品编号,a.产品名称,b.客户名,b.客户订金,a.客户订数* b.客户订金 as总金额 into #temptable from Product a inner join Order b on a.产品编号=b.产品编号 if @@error=0 print "Good" else print "Fail" go 数据挖掘实验室
|