SQL Server操作之数据库安全性和完整性

本文通过一道题目深入讲解SQL Server 2008的安全性与完整性控制。内容涵盖数据库附加,创建用户与登录名,设计只显示学生平均成绩的视图,以及使用grant和revoke进行权限管理。此外,还探讨了如何设置primary key、foreign key、not null、unique和check完整性约束,并通过实验数据展示违反约束时系统的处理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 一道题学会SQL Server安全性和完整性控制,包括创建数据库,创建数据库用户,权限赋予及收回等

题目如下:

1、在SQL SERVER 2008上附加teaching数据库,其中三张表的含义解释如下:

学生表dbo.student有属性sno、sname、spec、birthday、email、sex、scholarship,分别代表学号、姓名、专业、生日、电子邮箱、性别、奖学金;

课程表dbo.course有属性cno、cname、credit、teacher,分别代表课号、课程名、学分、任课教师;

选课表dbo.student_course有属性sno、cno、grade,分别代表学号、课号、成绩。

具体操作过程博主该系列上一文章。

 

2、SQL Server系统的安全性练习

1)视图技术可以使无权使用数据的用户不能接触他感兴趣的数据,请设计一个只能查看每个学生平均成绩的视图student_avg_grade(sno,sname,avg_grade);

 

2)登录到SQL Server Management Studio后,先展开数据库服务器®安全性®登录名,通过右键单击登录名,在新建登录名的对话框中创建登录名S1;然后展开数据库teaching®安全性®用户,通过右键单击用户,在新建用户的对话框中创建用户名U1,并使数据库用户名U1与数据库服务器登录名S1相关联。


3)用grantrevoke语句进行授权和收权操作,具体如下:

1)以S1登录数据库服务器,查看用户U1是否有权力查询teaching

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值