存储过程

--存储过程(系统存储过程以sp_开头)
sp_databases --列出服务器上的所有数据库
sp_helpdb    --报告有关指定数据库活所有数据库的信息
sp_renamedb  --更改数据库的名称
sp_tables    --返回当前环境下可查询的对象列表
sp_columns   --返回某个列表的所有信息
sp_help      --查看、某个表的所有信息
sp_helpconstraint --查看某个表的约束
sp_helpindex --查询某个表的索引
sp_stored_procedures --列出当前环境中的所有存储过程
sp_password  --添加或修改登录账户的密码
sp_helptext  --显示默认值、未加密的存储过程、用户定义的存储过程、触发或视图的实际文本

exec sp_databases
exec sp_renamedb 'news1','news'
exec sp_helpdb
exec sp_help bank
exec sp_helptext view_bank_stuInfo_1
exec sp_stored_procedures -- 为什么当前数据库中我没创建存储过程,但是可以用命令看到好多存储过程
--扩展存储过程exec xp_cmdshell Dos命令 [NO_OUTPUT] 

exec xp_cmdshell 'mkdir D:\bank',NO_OUTPUT  --创建文件夹 D:\bank 该命令必须在数据库master 下进行

--用户定义的不带参数的存储过程
use useDB
go
if exists(select * from sysobjects where name='proc_avg')
drop procedure proc_avg
create procedure proc_avg
as
declare @scoreAvg float
select @scoreAvg=AVG(score)from stuInfo_1
print '平均成绩'+convert(varchar(8),@scoreAvg)

exec proc_avg --执行不带参数的存储过程

--带输入参数存储过程
select * from student
select * from exam
go

insert into exam(stu_no,exam_bishi,exam_jishi,exam_bt,exam_jt)
select 's253001',60.2,65.0,'是','是'
union select 's253002',59.2,65.0,'否','是'
union select 's253003',45.2,25.6,'否','否'

use stuDB
go
if exists(select * from sysobjects where name='proc_avg1')
drop procedure proc_avg1
go
create procedure proc_avg1
@bi int,
@ji int
as
print '参加本次考试没有通过的学员'
select student.stu_no,stu_name,exam.exam_bishi,exam.exam_jishi from student inner join exam on student.stu_no=exam.stu_no
where exam_bishi<@bi or exam_jishi<@ji
 go
exec proc_avg1 60,65
exec proc_avg1 50,45
--带输出参数的存储过程

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值