存储过程
存储过程
1、了解存储过程的优点;
2、掌握常用的系统存储过程;
3、掌握如何创建存储过程;
4、掌握如何调用存储过程
什么是存储过程 ?
int sum(int a,int b)
{
int s;
s =a+b;
return s ;
}
存储过程的优点
存储过程的分类
a.系统存储过程
由系统定义,存放在master数据库中;
类似C语言中的系统函数;
系统存储过程的名称都以“sp_”开头或”xp_”开头
b.用户自定义存储过程.
系统存储过程 | 说明 |
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 'Northwind','Northwind1' ---->修改数据库的名称
USE stuDB
GO
EXEC sp_tables ---->当前数据库中查询的对象的列表
EXEC sp_columnsstuInfo ---->返回某个表列的信息
EXEC sp_helpstuInfo ---->查看表stuInfo的信息
EXEC sp_helpconstraintstuInfo ---->查看表stuInfo的约束
EXEC sp_helpindexstuMarks ---->查看表stuMarks的索引
EXEC sp_helptext 'view_stuInfo_stuMarks' ---->查看视图的语句文本
EXEC sp_stored_procedures ---->查看当前数据库中的存储过程
<span style="color:#6600cc;font-weight: bold;font-size:18px;">USE master
GO
EXEC xp_cmdshell 'mkdir d:\bank', NO_OUTPUT </span><span style="color:#ff0000;font-weight: bold;font-size:18px;">---></span><span style="font-size:18px;color:#ff0000;font-weight: bold;"> 创建文件夹D:\bank</span><span style="color:#6600cc;font-weight: bold;font-size:18px;">
IF EXISTS(SELECT * FROM sysdatabases
WHERE name='bankDB')
DROP DATABASE bankDB
GO
CREATE DATABASE bankDB
(
…
)
GO
EXEC xp_cmdshell 'dir D:\bank\' </span><strong><span style="font-size:18px;color:#ff0000;">---> 查看文件</span><span style="line-height: 29.7px; font-family: Arial, Helvetica, sans-serif;"><span style="font-size:18px;color:#ff0000;">文件夹D:\bank</span></span></strong>