数据库实验报告SQLWord下载.docx
- 文档编号:19679765
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:21
- 大小:26.12KB
数据库实验报告SQLWord下载.docx
《数据库实验报告SQLWord下载.docx》由会员分享,可在线阅读,更多相关《数据库实验报告SQLWord下载.docx(21页珍藏版)》请在冰豆网上搜索。
(5)在“数据文件”选项卡的“位置”中指定数据文件的物理文件名,来决定存储位置;
将光标移至“位置”单元格的文本框可修改存储位置,或打开“查找数据库文件”来选择存储路径,设置主文件名。
(6)指定初始大小及文件组,数据文件的大小可以是固定的,也可以是自动增长的。
(7)设置事务日志文件的相关属性。
(8)单击确定即可,可在企业管理器和查询分析器中看到此数据库。
2、使用向导创建数据库
(1)由于SQLServer2000规定不允许存在重名数据库,打开企业管理器,展开数据库节点,删除“产品销售”数据库。
(2)在“企业管理器”窗口中“工具栏”上打开“数据库”节点,选择“创建数据库向导”选项,单击确定。
(3)打开“创建数据库向导”对话框,首先看到“欢迎使用数据库向导”窗口,单击“下一步”按钮。
(4)在之后打开的窗口中指定数据库名称、位置等,根据提示单击“下一步”按钮。
(5)单击“完成”按钮,在企业管理器和查询分析器中找到“产品销售”数据库。
3、用SQL命令创建数据库
(1)删除“产品销售”数据库。
(2)打开“查询分析器”,在编辑窗口中输入如下语句:
createdatabase产品销售
on
primary
(name=产品销售_date,
filename=’C:
\产品销售_data.mdf’,
size=10mb,
maxsize=20mb,
filegrowth=10%
)
logon
(name=产品销售_log,
\产品销售_log.ldf’,
size=2mb,
maxsize=unlimited,
filegrowth=2mb
go
(3)命令输入完毕,按F5键或运行按钮,在对象浏览器窗口空白处刷新后,可看到所创建的“产品销售”数据库。
(二)查看数据库信息
1、用企业管理器查看数据库信息
(1)打开企业管理器,依次展开“服务器组”、“服务器”、“数据库”等节点。
(2)右键单击要查看的数据库名,选取“属性”命令。
(3)在“数据库属性”对话框中通过单击“常规”、“数据文件”等选项卡查看和修改数据库相关信息。
2、使用Transact-SQL语句查看数据库信息
查看“产品销售”数据库的信息和所有数据库信息
executesp_helpdb产品销售
executesp_helpdb
三、实验难点
实验过程中一些基本操作不熟练,创建数据库过程中出现的一些小问题不知道怎么操作,例如完成操作后,管理器中不显示新建的数据库、实验的保存等。
四、实验体会
通过本次实验,对SQLServer语言有了一定的了解,虽然同VFP有一定的相似之处,但使用的环境不同,在操作上不熟练,还应加强练习,同时巩固VFP相关内容。
实训二
(一)创建表
1、使用企业管理器创建表
(1)打开企业管理器,展开SQLServer组,展开建立表所在的“产品销售”数据库。
(2)选中“表”结点,单击鼠标右键,选中“新建表”命令,打开“表设计器”窗口。
(3)建立表结构,输入列名、数据类型、长度等。
(4)选中“产品编号”所在的行,单击工具栏上的小钥匙按钮,便将“产品编号”列设置为主键。
(5)填写完所有列后,单击工具栏中的“保存”按钮,在弹出的对话框中输入表名“产品信息”,单击“确定”按钮,即完成表的创建。
2、使用CREATETABLE创建表
创建“产品信息”表的程序
CREATETABLE产品信息
(
产品编号CHAR(6)PRIMARYKEY,
产品名称CHAR(30)NOTNULL,
价格FLOAT(8),
库存量INT
GO
(二)表的其他操作
1、修改表:
ALTERTABLE表名ADD列名数据类型[(长度)][NULL|NOTNULL]
2、删除字段:
ALTERTABLE表名DROPCOLUMN列名
3、删除表:
DROPTABLE表名
4、插入表数据:
INSERT[INTO]表名{[(字段列表)]{VALUES(相应的值列表)
5、修改表数据:
UPDATE表名SET{列名={表达式|DEFAULT|NULL}[FROM源表名][WHERE<
条件表达式>
]
6、删除表数据:
DELETE[FROM]表名[WHERE{<
}]
表是一项非常重要的知识,在这次试验中对表有了认识,但在表的不同建立上有一定的难度。
本次试验学到很多,巩固了以前的知识,学到了新的东西,为以后的学习提供了一个好的条件,提高了积极性。
实训三
(一)规则
1、使用企业管理器创建规则对象
(1)打开企业管理器,选中要创建规则的数据库“产品销售”,选中“规则”节点,单击鼠标右键,在弹出的快捷菜单中,单击“新建规则”命令。
(2)在弹出“规则属性”对话框中,输入名称rl_telnum和值“@yLIKE’[0-9]’+’[0-9]’+’[0-9]’+’[0-9]’+’[0-9]’+’[0-9]’+’[0-9]’+’[0-9]’”。
(3)单击“确定”按钮,完成创建规则对象操作。
2、使用企业管理器绑定和解绑和绑定规则对象
(1)打开企业管理器,选中要操作的数据库“产品销售”,单击“规则”节点。
(2)在详细列表窗口,选中rl_telnum规则对象,单击鼠标右键,在弹出的快捷菜单中选中“属性”命令,打开“规则属性”对话框。
(3)在打开“规则属性”窗口中,单击“绑定列”按钮,弹出“将规则绑定到列”对话框。
(4)在该窗口中的“表”下拉列表框中,选定“销售商信息”表,在“未绑定的列”列表框中选定“电话”,然后单击“添加”按钮,“电话”被自动添加到“绑定列”列表框中,单击“应用”按钮,绑定成功,单击“确定”按钮完成绑定操作,回到“规则属性”窗口,同样单击“应用”、“确定”按钮。
(5)规则对象rl_telnum的解绑定操作,只需要按照
(1)
(2)(3)步骤操作打开“将规则绑定到列”对话框,选中“绑定列”列表中的“电话”,然后单击“删除”按钮即可。
3、使用命令方式绑定和解绑规则对象
(1)执行绑定
(2)修改相关信息测试是否执行了检查。
4、删除规则
(1)解除绑定。
(2)删除规则。
(二)、用户自定义数据类型
1、创建用户自定义数据类型
(1)打开企业管理器,选中要创建的用户自定义数据类型数据库“产品销售”,选中“用户定义的数据类型”节点,在快捷菜单中单击“用户定义数据类型”命令。
(2)在“用户定义的数据库类型属性”对话框中输入名称usermail,选定的数据类型为varchar,长度为40。
若选中“允许NULL值”选项表示可以存在空值。
在“规则”和“默认值”中选择使用的规则和默认对象,若列表中没有规则和默认和默认值,则要建立相应的规则和默认值。
(3)单击“确定”按钮,完成用户自定义数据类型的创建。
2、删除用户自定义数据类型
(1)先修改表中的字段,使其不再使用该用户定义数据类型
(2)执行删除。
实验过程中有些操作不理解,通过与同学交流,基本掌握一些知识,收获很大。
通过本次实验,对SQLServer语言中规则有了一定的了解,由于实验仅仅参照书本,不能得心应手,需多加练习。
实训四
一、实验名称:
(一)索引的创建
1、系统自动创建索引
(1)打开查询分析器,设定当前数据库为“产品销售”数据库,然后输入以下语句,查看“销售商信息”表的索引情况。
(2)使用ALTERTABLE命令为“销售商信息”的电话字段添加唯一键约束,创建聚集索引。
2、在图形界面下创建索引
(1)打开企业管理器,展开数据库节点,找到“产品销售”数据库,选中表节点,找到“销售商信息表”单击鼠标右键,选中“设计表”命令。
(2)在“表设计器”窗口中,单击“表和索引属性”按钮,在弹出的对话框中单击“索引键”选项卡。
单击“新建”按钮,在“索引名”中填写索引名称“IX-销售商信息-负责人”。
(3)在列名中选择“负责人”,确定顺序为升序排列。
(4)如果选择“创建为CLUSTED”复选项表示创建聚集索引。
如果选择“创建UNIQUE”复选项表示创建唯一索引。
这两项都不选,表示创建的非唯一非聚集索引。
如果单击“删除”按钮就可以删除当前锁定的索引。
(5)单击“关闭”按钮后,单击“保存”按钮,保存修改结果。
3、使用CREATEINDEX语句创建索引
(1)UNIQUE:
用于指定创建的索引是唯一索引。
(2)CLUSTERED:
用于指定创建的索引为聚集索引。
(3)NONCLUSTERED:
创建非聚集索引
(4)ASC|DESC:
确定具体某个索引列的升序或降序排列方向,默认设置为ASC。
(5)ON文件组:
用于指定存放索引的文件组,该文件组必须是通过执行CREATERDATABASE或ALTERDATABASE创建的文件组
(二)索引的管理和维护
1、查看和修改索引信息
2、删除索引
(1)在企业管理器中,依次展开个节点,找到产品销售数据库,单击“表”节点,在详细列表中选中“销售”表,单击鼠标右键,在弹出的菜单中选择“设计表“命令。
(2)在打开的“表设计器“串口的工具栏上单击”表盒索引属性“按钮,在弹出的属性对话框中单击”索引|键”属性选项卡。
(3)在“定的索引”下拉列表中找到药删除的索引“IX-销售-产品销售”。
(4)单击“删除”按钮后,单击“关闭”按钮,在“表设计器”窗口的工具栏上单击“保存”按钮,保存修改结果。
(三)索引的维护
1、自动更新统计信息
(1)在企业管理器中,依次展开个节点,找到产品销售数据库。
(2)选中“产品销售”数据库,单击鼠标右键,找到弹出的菜单中选择“属性”命令。
(3)在属性对话框中,选择选项选项卡,选中“动更新统计信息”复选框,单击“确定”按钮。
完成自动更新统计信息的设置。
索引的相关知识以前接触过,但并不深刻理解,SQL的相关操作与VFP大不相同,在练习的过程中,能够体会到不同课程的差别,但同时也发现实验的不紧密性,容易出现不明错误,无从下手。
通过本次实验,对索引的知识更加深入的理解,对以后的二级考试将会有很大帮助。
同时也增强了信心,提高了学习的兴趣。
实训五
(一)、单表查询
1、条件查询
(1)比较运算符
(2)范围运算符
(3)列表运算符
(4)模拟匹配运算符
(二)数据统计
1、聚合函数
(1)求和函数和求平均值是数值型列求和与求平均值的函数,他们只能用于数值型字段。
(2)最大和最小函数分别用来返回指定列表达式中最大值和最小值。
(3)计数函数用于统计查询结果集中记录的个数,语法上“*”用于统计所有记录的个数,ALL用于指定列的非空列值的记录个数,DISTINCT用于统计指定列的列值非空且不重复的记录个数。
(三)、多表查询
1、交叉连接
2、内连接
3、外连接
4、自连接
5、合并结果集
(1)、UNION的结果集的列名与“SELECT语句1”的结果集中的列名相同。
(2)、默认情况下,会从结果集中删除重复行,如果使用了ALL关键字,则结果集中会包含重复行
(3)、使用UNION运算符时,各个语句不能包含自身的ORDER子句和COMPUTERBY子句,只能在最后一个SELECT语句中加入ORDER子句和COMPUTERBY子句,此时该句将作用于整个结果集。
(四)子查询
1、带比较运算符的子查询
2、带有IN关键字的子查询
3、带有ANY或ALL关键字的子查询
4、带有EXISTS关键字的子查询
5、UPDATE、DELETE和INSERT语句中的子查询
(五)使用企业管理器进行数据查询与维护
1、打开企业管理器,展开建立表所在的“产品销售”数据库
2、打开“查询设计器”窗口
3、工具栏中的“更改查询类型”按钮,用来选择各种查询类型
4、根据之前的分析,此查询涉及“销售商信息”、“产品信息”、“销售”三张表。
而当前的“关系图”网络中仅存在“销售商信息”表,故下一步要将其他表添加上。
5、在“网格窗格”的“别名”项中可以为新出的列定义别名
6、现在设置完毕,单击“运行”按钮,“结果窗口”中会显示运行结果
查询是非常重要的知识,对于一些程序的编写掌握不够,理解不深入,致使实验不完美。
实验过程也是基础知识掌握练习的过程,通过本次试验,发现自身的不足,以后会调整学习态度,争取好成绩。
实训六
视图
(一)视图的特点
1、关注特定数据
2、简化数据查询
3、提高数据库的安全性
4、方便数据的导入导出
(二)视图的创建
1、用户创建视图的条件
2、视图的命名规则
3、视图中列的命名规则
(1)当视图中的某些列来自表达式,函数或常量时
(2)当视图所引用不同基本表的列中有相同列名时
(3)希望给视图中的列指定新的列名时
4、创建和使用视图时应该注意一下情况
(1)只能在当前数据库中创建视图
(2)如果视图引用的基本表或视图被删除,则该视图就不能继续使用,知道用户重新创建新的基本或者视图为止
(3)如果视图中某一列时函数、数学表达式、常量,或者存在两个或两个以上列具有相同列名时,必须重新给这些列命名
(4)当通过试图查询数据时,SQLServer2000要确保句中涉及的所有数据库对象存在。
当痛过视图修改基本表中的数据时,不能违反数据完整性规则
(5)视图名称必须遵守标识符的规则,且对每个用户必须时唯一的。
此外,该名称不得与该用户拥有任何表名称相同
(三)通过视图修改基本表中的数据
1、若视图中的某列数据有表达式或常量得到,则不允许对该视图执行插入和更新操作,但允许执行删除操作
2、若视图的某列数据有集合函数的到,则不允许对该视图进行修改。
3、若视图的定义中使用了GROUPBY子句,则不允许对该视图进行修改
4、若视图定义中存在DINTINCT短语,则不允许对该视图也不允许修改
5、如果该视图不允许修改,那么基于该视图修改的视图也不允许修改
视图与查询有一定的联系,在查询的基础上练习视图有一定的收获,但程序的转变很难适应,基础知识不牢固。
通过本次实验,对视图有了过更深一步的认识,只要功夫深,没有什么做不到的,在程序的理解中,要结合相关知识,并且认真体会,会达到理想状态。
实训七
Transact-SQL程序设计
(一)常量、标识符、变量和运算符
1、常量
(1)字符串常量
(2)数值常量
(3)日期常量
2、标识符
(1)标识符规则
A、有字母、数字、下划线和一些来自其他语言字符组成,长度不能超过128个字符,对于本地临时表,标识符长度不能超过116个字符。
B、必须以字母、下划线“@”符号开头
C、标识符不能和Transact-SQL的保留字重名,包括保留字的大写和小写形式,不允许嵌入空格或其他特殊字符
(2)常规标识符
(3)分隔标识符
3、局部变量
(1)局部变量的定义
使用局部变量之前,必须先用DECLARE命令进行申明。
(2)局部变量的赋值方法
使用SET语句和SELECT语句为局部变量赋值
(3)显示局部变量的内容
可以使用SELECT语句和PRINT语句显示局部变量的内容
4、全局变量
(1)全局变量是在服务器级别定义的
(2)用户只能使用预先定义的全局变量,用户不能自己定义全局变量
(3)引用全局变量时,必须以标记符“@@”开头
(4)全局变量对用户来说是只读的
(5)局部变量的名称不能与全局变量名称相同
5、运算符
(1)算术运算符
(2)比较运算符
(3)字符串连接运算符
(4)逻辑运算符
(5)位运算符
(6)运算符的优先级别
(二)用户自定义函数
1、使用CREATEFUNCTION语句创建用户自定义函数
(1)建立标量函数
(2)建立内嵌表值函数
(3)建立多语言表值函数
2、修改和删除用户自定义函数
要使用企业管理器删除用户自定义函数,只需要找到药删除的用户自定义函数。
本次试验比较简单,但基础知识需要记忆掌握,有一定的难度,需多次练习记忆,联系前面的相关知识。
通过本次实验,各种变量有了新的认识,发现学习是永无止境而又有趣的事,在以后的学习中要保持积极的态度,认真对待每一门学科。
实训八
储存过程
(一)、创建存储过程的注意事项
1、在前面单元中曾使用过系统储存过程。
创建用户自定义存储过程有下列三种方法:
(1)使用SQLServer2000企业管理器创建存储过程
(2)使用创建存储过程向导创建储存过程
(3)使用CREATEPROCEDURE命令创建存储过程
2、注意事项
(1)不能将CREATEPROCEDURE语句与其他SQL语句组合到单个批处理中
(2)创建存储过程的权限默认数据库所有者,该所有者可将此权限授予其他用户
(3)存储过程是数据库对象,其名称必须遵守标识符规则
(4)只能在当前数据库中创建储存过程
(5)一个储存过程的最大尺寸为128MB
3、创建存储过程前,需要确定存数过程的三个组成部分
(1)所有输入参数以及传给调用者的输出参数
(2)被执行的针对数据库的操作语句,包括调用其他存数过程的语句
(3)返回给调用者的状态值,以指明调用的成功的还是失败
(二)、使用CREATPROCEDURE命令创建存储过程
1、创建不带参数的储存过程
2、执行字符串
3、带输入参数的储存过程
(1)建立带输入参数的储存过程
(2)执行带输入参数的储存过程
4、带输出参数的储存过程
5、通过RETURN返回参数
(三)、储存过程的管理与维护
1、在企业管理器中管理和维护存储过程
用户可以在企业管理器中进行存储过程的管理饿维护操作
2、使用命令方式查看存数过程的定义信息
在查询分析器下,可以通过系统储存过程查看储存定义;
通过查看储存过程的参数,通过查看储存过程的相关性
3、使用命令修改存数过程
4、存数过程的重编译
(1)在创建存储的过程是设定
(2)在执行存储过程是设定
(3)通过系统存数过程设定
5、使用命令方式对存储过程重命名
在查询分析器中可以使用系统存储过程来更改存储过程的名称
6使用命令方式删除存储过程
存数过程的删除是通过DROP语句来实现的
本次实验较为抽象,很多东西不理解,具有一定的难度,特别是存储过程的建立。
存储过程是一个抽象的概念,实验中要不断加强理解,反复练习,掌握基本知识,从而进一步理解实践过程与理论知识的异同。
实训九
触发器
(一)使用企业管理器创建触发器
1、打开企业管理器,依次展开各节点找到要创建触发器的数据库。
2、展开“产品销售”数据库节点,选中“表”节点。
3、在详细列表窗口中选中要创建的触发器的表
4、单击鼠标右键,在弹出的快捷菜单中选择“所以任务”命令
5、在随后弹出的子菜单中选择“管理触发器”命令。
6、单击“检验语法”按钮可以检查语法的正确性
7、单击“确定”按钮,会关闭窗口,创建成功
(二)触发器的管理和维护
1、查看触发器的定义信息
(1)使用企业管理器查看触发器的定义信息
(2)通过系统储存过程查看触发器的定义信息
2、修改和删除触发器
(1)使用命令方式修改触发器
(2)删除触发器
(3)禁止或启用触发器
(三)触发器的嵌套与递归
1、当一个嵌套触发器嵌套的是其自身时,这种特殊情况就称为递归触发器。
2、递归触发器又因是直接激发自身而分为直接递归和间接递归
3、递归触发器和嵌套触发器一样深度可以达到32层
4、但通常不建议使用递归触发器、会浪费系统资源
5、触发器的作用
(1)基于多张表的级联修改
(2)实现比CHECK约束更为复杂的约束操作
(3)比较数据修改前后的差别,并根据差别采取相应的操作。
(4)强制表的修改要合乎业务规则
(5)调用存储过程
6、触发器的分类
(1)AFTER触发器
(2)INSTEADOF触发器
(四)事务
1、事务的基本概念
(1)原子性
(2)一致性
(3)隔离性
(4)持久性
本次实验理论知识较多,虽然可以懂字面意思,但感觉很模糊,不知道如何应用。
本次试验收获不少,触发器的相关知识再一次得到应用和复习,有了一定的认识,对以后的学习有很大帮助。
实训十
(一)SQLServer2000的安全模型
1、SQLServer2000访问控制
(1)登录SQLServer2000服务器实例
(2)访问数据库
(3)访问数据对象
2、SQLServer2000身份验证模式
(1)Window身份验证
(2)SQLServer身份验证
(3)设置身份验证模式
(二)服务器的安全性
1、系统内置服务器登录账户
2、创建和修改用户登录账户
(1)在企业管理器中创建windows身份验证的登录账户
(2)在企业管理器中创建SQLServer身份验证的登录账户
(3)使用SQL语句创建两种登录账户
3、禁止和删除登录账户
(1)使用企业管理器禁用windows身份验证的登录账户
(2)使用企业管理器删除登录账户
(3)使用SQL语句实现禁用windows身份验证的登录账户
(4)使用SQL语句删除登录账户
(三)数据库的安全性
1、添加数据库用户
(1)在数据用户管理界面上添加数据库用户
(2)使用sp-grantbaccess存储过程添加数据库用户
2、修改数据库用户
3、删除数据库
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验 报告 SQL