SQL Server存储过程

存储过程

存储过程


1、了解存储过程的优点;

2、掌握常用的系统存储过程;

3、掌握如何创建存储过程;

4、掌握如何调用存储过程


什么是存储过程 ?


存储过程(procedure)类似于C语言中的函数;
存储过程是一组预编译的SQL语句;
用来执行管理任务或应用复杂的业务规则;
存储过程可以带参数,也可以返回结果;

int sum(int a,int b)
{  
   int s;
   s =a+b;
   return s ;
}

存储过程可以包含数据操纵语句、变量、逻辑控制语句等



存储过程的优点


1、执行速度更快
2、允许模块化程序设计
3、提高系统安全性
4、减少网络流通量

存储过程的分类 


a.系统存储过程

由系统定义,存放在master数据库中;

类似C语言中的系统函数;

系统存储过程的名称都以“sp_”开头或”xp_”开头

b.用户自定义存储过程.

由用户在自己的数据库中创建的存储过程
类似C语言中的用户自定义函数

常用的系统存储过程 

系统存储过程

说明

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 ---->查看当前数据库中的存储过程

常用的扩展存储过程:xp_cmdshell

可以执行DOS命令下的一些的操作
以文本行方式返回任何输出
调用语法:
EXEC xp_cmdshell DOS命令 [NO_OUTPUT]


示例:创建数据库bankDB,要求保存在D:\bank

<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>


(未完,待续……)






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值