数据库完整性和安全性

在我们对数据库中的数据进行修改插入的时候,如果对数据都进行完整性的检测会增加我们的麻烦,
现在把数据的完整性约束作为数据库有的一部分既可防止数据库的破坏,又可以提高完整性约束的检测
实体完整性约束和主码:
实体的完整性,一旦某个属性被定义为主码之后,该属性的值就不可以为空,而且不可以出现重复的现象,对于完整性
约束的添加,在sql语句中有两种定义形式
<span style="font-size:18px;">CREATE TABLE STUDENT(
	SNO INT PRIMIRY KEY
	PRIMIRY KEY (SNO));</span>

一些约束通过外部码约束实现的,也就是说这些相互约束是根据

<span style="font-size:18px;">CREATE TABLE STUDENT(
	CNO CHAR (2) REFERENCE CLASS (CNO));</span>

学生的班级信息必须是要在在班级的表中含有的,而且被作为外部码的属性,必须是在另一个表中被说明为主码或者是加上了unique约束,用户自定义完整性约束利用check语句,通过check语句,我们可以更好的约束属性值。
<span style="font-size:18px;">AGE INT CHECK (AGE > 18 AND AGE <= 60)
CHECK (DNO IN (SELECT DNO FROM DEPARTMENT))</span>

约束的更新

删除当前已有的完整性约束:

<span style="font-size:18px;">ALTER TABLE STUDENT
DROP CONSTRAINT DF_SNO;</span>

添加完整性约束:
<span style="font-size:18px;">ALTER TABLE STUDENT
ADD UNIQUE (SNO);

ALTER TABLE STUDENT
ADD CONSTRAINT UN_SNO ;</span>

数据库的安全性问题

对于数据库的安全性问题,为保护数据库数据的安全性,常采用的方式是以下几种:

1.用户标示和鉴别,每一个用户拥有自己的登录口令。

2.访问控制,对于不同的用户对数据库数据的操作拥有不同的权限。

3.强制存取控制方法,该方法是在访问控制上的一个更新,对数据和用户划分密级,在操作的时候将密级进行一个比较,然后最终确定用户的读写。

4.视图和查询修改,通过视图隐藏一部分数据,查询修改就是在用户执行查找操作的时候,提前做一个优化,选择性的输出部分查询结果。

5.跟踪审计,对于用户的操作做一个记录,分析用户的操作来判断用户是否存在入侵数据库的行为。



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、实验目的 使学生加深对数据库安全性完整性的理解。并掌握SQL Server中有关用户、角色及操作权限的管理方法。熟悉通过SQL语句对数据进行完整性控制。 二、实验内容和要求   数据库安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色管理,设置和管理数据操作权限。   具体内容如下:   设置SQL Server的安全认证模式(Windows或SQL Server和Windows(S)认证模式)。   登录的管理 创建一个登录用户   数据库用户的管理 登陆用户只有成为数据库用户(Database User)后才能访问数据库。每个数据库用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server的数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。   角色的管理 创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。   在学生表中定义主键、外键约束。   在课程表的“课程名”字段上定义唯一约束。   在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100.“课程号”字段只能输入数字字符。   定义规则,并绑定到读者表的“性别”字段,使之只能取“男、女”值。   在学生表中增加出生日期字段。定义缺省,并绑定到借阅表的“借阅日期”上,使之只能取当前日期。
数据库完整性安全性数据库设计和管理中非常重要的两个方面。下面是对这两个方面的分析结果: 1. 数据库完整性 数据库完整性是指数据库中数据的准确性、一致性和可靠性。数据库完整性可以保证数据库中的数据正确无误,避免了数据的混乱和错误,使得数据库具有更高的可靠性和可用性。 数据库完整性的实现需要采取各种措施,包括: - 数据类型和长度的限制:对于每个字段,需要指定其数据类型和长度,以避免不合法的数据输入。 - 主键和外键的定义:主键和外键可以确保数据表之间的关系和数据的一致性。 - 约束和触发器:这些机制可以强制执行数据的完整性,例如,CHECK约束可以限制某些字段的取值范围,触发器可以在数据修改时执行一些操作。 2. 数据库安全性 数据库安全性是指对数据库中的数据进行保护,防止不合法的访问和恶意攻击,确保数据库中的数据不被泄露或损坏。数据库安全性数据库管理中最重要的方面之一,因为数据库中存储了大量的敏感数据,包括用户的个人信息和机密业务数据。 数据库安全性的实现需要采取各种措施,包括: - 认证和授权:用户需要进行身份认证,只有授权的用户才能访问数据库。 - 数据加密:对于敏感数据,需要进行加密处理,以保证数据的机密性。 - 安全审计和监控:对于数据库的访问和操作需要进行审计和监控,发现并防止不合法的访问和恶意攻击。 综上所述,数据库完整性安全性数据库设计和管理中非常重要的两个方面。通过采取各种措施,可以确保数据库中的数据正确无误,并保护数据库中的数据不被泄露或损坏,从而提高数据库的可靠性和可用性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值