- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 数据的完整性、安全性
实验目的
掌握数据安全性和完整性的概念,以及如何保证数据库中数据安全及完整性。
掌握 SQL Server中有关用户、角色及操作权限的管理方法.
学会创建和使用规则、缺省。
实验内容
1 数据库的安全性实验,通过SSMS设置 SQL Server的安全认证模式.实现对SQL Server的用户和角色管理,设置和管理数据操作权限.
2数据库的完整性实验。使用Transact-SQL设计规则、缺省、约束和触发器。
实验要求
数据的完整性实验
CREATE DATABASE XSCJ
ON PRIMARY
(
NAME=Student_dat,
FILENAME=D:\XSCJ.mdf,
SIZE=10MB,
MAXSIZE=50MB,
FILEGROWTH=10%
)
LOG ON
(
NAME=Student_log,
FILENAME=D:\XSCJ.ldf,
SIZE=5MB,
FILEGROWTH=10%
)
GO
⑴用SQL语句创建一学生成绩数据库(XSCJ),包括学生(XSQK)、课程(KC)和成绩表(XS_KC):
学生情况表(XSQK)
列名 数据类型 长度 是否允许为空值 学号 Char 6 N 姓名 Char 8 N 性别 Bit 1 N 出生日期 smalldatetime 2 专业名 Char 10 所在系 Char 10 联系电话 char 11 Y CREATE TABLE XSQK(
学号CHAR(6) NOT NULL ,
姓名CHAR(8) NOT NULL,
性别BIT NOT NULL,
出生日期smalldatetime ,
专业名CHAR(10) ,
所在系 Char(10),
联系电话char(11)
) ;课程表(KC)
列名 数据类型 长度 是否允许为空值 课程号 Char 3 N 课程名 Char 20 N 教师 Char 10 开课学期 Tinyint 1 学时 Tinyint 1 学分 Tinyint 1 N CREATE TABLE KC(
课程号 Char(3) NOT NULL,
课程名 Char(20) NOT NULL,
教师 Char(10),
开课学期 Tinyint ,
学时 Tinyint ,
学分 Tinyint NOT NULL
) ;
成绩表(XS_KC)
列名 数据类型 长度 是否允许为空值 学号 Char 6 N 课程号
成绩 Char
Smallint 3
2 N
CREATE TABLE XS_KC(
学号 Char(6) NOT NULL,
课程名 Char(3) NOT NULL,
成绩 Smallint
) ;
⑵数据的实体完整性实验 V
①用SSMS分别将学生情况表(XSQK)的学号字段、课程表(KC)的课程号字段设置为主健
②用T-SQL语句将成绩表(XS_KC)的学号、课程号字段设置为主健
ALTER TABLE XS_KC ADD CONSTRAINT XS_KC_KEY PRIMARY KEY (学号,课程号)
⑶数据的参照完整性实验
①用SSMS为成绩表(XS_KC)创建外键FK_ XSQK_ID,外键FK_ XSQK_ID参照学生情况表(XSQK)表的学号
②用T-SQL语句成绩表(XS_KC)创建外键FK_ KC_ID,外键FK_ KC _ID参照课程表(KC)
表的课程号
ALTER TABLE XS_KC ADD CONSTRAINT FK_ KC_ID FOREIGN KEY (课程号) REFERENCES KC(课程号);
⑷数据的用户定义完整性实验
用T-SQL语句为学生情况表(XSQK)的姓名列创建一个唯一约束
ALTER TABLE XSQK ADD CONSTRAINT FK_XSQK_UNIQUE UNIQUE (姓名)
②用SSMS为学生情况表(XSQK)的性别列创建一个检查约束,使得性别的值为男或女
③用T-SQL语句为成绩表(XS_KC)的成绩列创建一个检查约束,使得成绩的值在(0~100)之间
ALTER TABLE XS_KC ADD CONSTRAINT GRADEchk CHECK(成绩BETWEEN 0 AND 100);
④用SSMS语句课程表(KC)的学时列创建一个缺省约束,缺省值为60
⑤用T-SQL语句课程表(KC)的学分列创建一个缺省约束,缺省值为2
ALTER TABLE KC ADD CONSTRAINT FK_KC_DEFAULT DEFAULT 2 FOR 学分
2.将如下数据分别转换成文
您可能关注的文档
最近下载
- 2023年广东省6月普通高中学业水平考试历史试题及答案 .pdf VIP
- 建设项目对自然保护区自然资源、自然生态系统和主要保护对象影响评价技术规范.pdf
- JTG3430-2020 公路土工试验规程.docx
- TWJ-6DS电气文件0907.doc
- 2023年海南大学网络工程专业《操作系统》科目期末试卷A(有答案).docx VIP
- 2023年IATF16949汽车质量管理体系解读之内部审核控制程序(内含全套表格).docx VIP
- 2023年湖北第二师范学院汉语言文学专业《现代汉语》期末试卷A(有答案).docx VIP
- 统计执法资格考试题库.doc VIP
- jackson电动力学习题答案.pdf
- 宁波大学2021学年度第二学期《概率论与数理统计》期末考试试卷(A卷)及参考答案.docx
文档评论(0)