"这篇资料主要介绍了在SQL Server 2008中如何创建用户表以及定义存储过程,特别是关于密码修改的存储过程change_pass。同时,资料也提到了存储过程的分类,包括系统存储过程、本地存储过程、临时存储过程、远程存储过程和扩展存储过程。" 在SQL Server 2008中,创建名为`users`的表用于存储用户信息,表结构包括`username`、`pass`和`grade`字段,其中`username`为主键,不允许为空。创建表的SQL语句如下: ```sql USE XSBOOK GO CREATE TABLE users ( username char(8) NOT NULL, pass char(10) NOT NULL, grade int NOT NULL, CONSTRAINT user_pk PRIMARY KEY (username) /*定义主键约束*/ ) ``` 此外,定义了一个名为`change_pass`的存储过程,用于实现用户密码的修改。这个存储过程首先检查change_pass是否存在,如果存在则删除,然后重新创建。存储过程接受三个参数`@username`、`@oldpass`和`@newpass`,并根据这些参数更新`users`表中的密码。创建存储过程的SQL语句如下: ```sql IF EXISTS(SELECT name FROM sysobjects WHERE name='change_pass' AND TYPE='P') DROP PROCEDURE change_pass GO CREATE PROCEDURE change_pass @username char(8),@oldpass char(10),@newpass char(10) AS UPDATE users SET users.pass=@newpass WHERE users.username=@username AND users.pass=@oldpass GO ``` 存储过程在SQL Server中有多种类型,如: 1. **系统存储过程**:由系统提供,用于执行各种操作,如数据库管理任务,通常以`sp_`开头。 2. **本地存储过程**:用户在自己的数据库中创建,可以使用T-SQL或CLR(Common Language Runtime)编写。T-SQL存储过程是一组T-SQL语句的集合,可以接收参数并返回结果。 3. **临时存储过程**:分为局部和全局两种,分别以单个`#`和双`##`标识,只在特定会话或所有会话中可见。 4. **远程存储过程**:在远程服务器上执行的存储过程。 5. **扩展存储过程**:执行于SQL Server环境之外的动态链接库,需预先加载到系统中。 创建存储过程的T-SQL命令示例是定义一个用于查询XSBOOK数据库中每位读者当前借书情况的存储过程。这涉及到对SQL命令的熟悉和掌握,以便编写出符合需求的存储过程逻辑。 这篇资料提供了关于SQL Server 2008中创建用户表、定义存储过程以及存储过程分类的基础知识,对于理解数据库管理和编程有重要的参考价值。
- 粉丝: 12
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解