简要介绍数据库表的约束和主要类型、作用?

如题所述

首先应该说下什么是数据库约束?
数据库约束是为了保证数据的完整性而实现的一套机制,它具体的根据各个不同的数据库的实现而有不同的工具。所以我们在学习约束的时候就会看到域完整性(Domain Integrity)、实体完整性(Entity Integrity)、参照完整性(Referential Integrity)与用户定义完整性(User-defined Integrity)的不同的约束分类。但我今天就说下我们或是我们有些人刚接触数据库的同学,并且从SQL语言基础了解并学习到的。
1、非空约束(Not Null Constraint)
这个可能大家都了解,就是我们在添加那个表 userinfo,在id、name后面都添加了not null,就是有些列不能把它设为空,相信大家都理解,我就说下我在一个英文资料看到的一段英文:The not null specification prohibits the insertion
of a null value for this attribute.Any database modifucation that would cause a null to be inserted in an attribute declared to be not null generates an error diagnostic.(大家就得自己翻译了)
2、唯一约束(Unique Constraint)
一个唯一约束并不包括一个NULL值。直接在字段定义后加入UNIQUE即可定义该唯一约束。
1) 一个表只能创建一个主键约束,但一个表可以根据需要对不同的列创建若干unique约束
2)主键字段不允许为null ,unique允许为空
3)一般创建主键约束时,系统自动产生簇索引,unique约束自动产非簇索引
3、检查约束(The Check Clause)
通过在定义数据库表里,在字段级或者是在表级加入的检查约束,使其满足特定的要求。
我来举一个例子
create table student (
name varchar(15) not null,
student_id varchar(15),
degree_level varchar(15),
primary key(student_id),
check(degree_level in('Bachelors','Masters','Doctorate')));
Here ,we use the check clause to simulate an enumerated type by specifying that degree_level must to be one of 'Bachelors','Masters','Doctorate';
4、主键约束(Primary Key Constraint)
其实主键约束就是一张表只能建立一个主键约束,其实就是唯一约束+非空约束。大家通过上课讨论那么多关于“依赖”的事情,估计大家都能理解了
5、外健约束( Foreign Key Constraint)
Foreign Key Constraint主要是确保同一个表或者不同表之间的引用完整性,所以必须引用一个PRIMARY KEY或者UNIQUE约束,用户必须在应用表上具有REFERENCES权限;一个表中最多可以有31个外部键约束; 在临时表中,不能使用外部键约束; 主键和外部键的数据类型必须严格匹配 。这个就不多说了给大家推荐一个网站http://tech.sina.com.cn/s/2010-01-04/00481199365.shtml

系摘抄....

网上随便搜索一下,大把大把的~~~
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-15
  约束的简介
  数据的完整性是指数据的正确性和一致性,可以通过定义表时定义完整性约束,也可以通过规则,索引,触发器等。约束分为两类:行级和表级,处理机制是一样的。行级约束放在列后,表级约束放在表后,多个列共用的约束放在表后。
  完整性约束是一种规则,不占用任何数据库空间。完整性约束存在数据字典中,在执行SQL或PL/SQL期间使用。用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。
  约束类型
  总的来说有五种:唯一性和主键约束、外键约束、检查约束、空值约束、默认值约束,
  有五大关键词,UNIQUE和Primary Key, Foreign Key, CHECK, NOT NULL, DEFAULT

简要介绍数据库表的约束和主要类型、作用?
4、主键约束(Primary Key Constraint)其实主键约束就是一张表只能建立一个主键约束,其实就是唯一约束+非空约束。大家通过上课讨论那么多关于“依赖”的事情,估计大家都能理解了 5、外健约束( Foreign Key Constraint)Foreign Key Constraint主要是确保同一个表或者不同表之间的引用完整性,所以必须引用...

测试中经常使用到数据库, 请问数据库中字段类型和约束有什么作用?
①.作用: 保证数据的完整性,对字段中的数据进行限制和约束 ②.分类: primary key 主键 (表示唯一一行记录)not null (不能为空)unique 唯一值约束, 不允许重复 default 默认值约束 foreign key 外键约束 说明: 对于字段来说, 数据类型必须要有, 但是约束可以没有 举例: 字段名 数据类型 约束 i...

数据库中constraint是什么
数据库中的约束有多种类型,常见的包括:主键约束:确保某一列或一组列的数据唯一性,并且不允许为空值。主键用于唯一标识表中的每一行数据。外键约束:用于确保一个表中的数据匹配另一个表中的一行数据,主要用于实现表之间的关系。唯一约束:确保某一列或一组列的数据在表中是唯一的。检查约束:用于...

数据库constraint是什么意思?
数据库中的约束主要有以下几种类型:1. 主键约束:确保某列或某几列的组合具有唯一性,并且不能为null值。它唯一标识表中的每条记录。2. 外键约束:确保某列的值匹配另一张表中的主键值,用于维护两个表之间的关系。这种约束主要用于确保参照完整性。3. 唯一约束:确保某列或某几列的所有值都是唯...

测试中经常使用到数据库,请问数据库中字段类型和约束有什么作用?
类型约束的是数据的存储类型,而约束是基于类型之上的额外限制。数据类型:①.作用: 保证字段数据的完整性 ②.分类: int(有符号整数) \/ int unsigned (无符号整数,不可以是负数)tinyint \/ tinyint unsigned decimal(5,2) 浮点数(小数) 共占用5位,小数占用2位,整数占用3位 varchar(20) 变长字符串...

数据库约束是什么意思?
数据库约束是用于限制数据库表中数据的规则,可以帮助确保数据完整性和一致性。约束可分为多种类型,如主键、外键、唯一键、非空约束、检查约束等。约束可防止用户错误操作导致数据污染或损坏,遵循约束可提高数据的质量和可靠性。数据库约束对于数据库的管理和维护具有重要的作用。首先,限制了数据的输入...

数据库约束有哪些
数据库约束主要有以下几种:1. 主键约束(Primary Key Constraint)主键是一种特殊的数据库表约束,用于唯一标识表中的每条记录。主键字段必须包含唯一的值,不能有重复值,且不能有空值。每张表只能有一个主键,可以是单个字段或多个字段组合作为主键。这种约束用于增强数据的完整性和保证数据的准确性。2...

数据库有哪几种类型约束
数据库有五种类型约束,分别为:主键约束、唯一约束、检查约束、默认约束、外键约束。主键约束:要求主键列数据唯一,并且不允许为空。唯一约束:要求该列唯一,允许为空,但只能出现一个空值。检查约束:某列取值范围限制、格式限制等。默认约束:某列的默认值。外键约束:用于在两表之间建立关系,需要指定...

建立数据库基表都有哪些约束,分别说明其作用
外键约束要定义在从表上,主要则必须具有主键约束或是unique约束,当定义外键约束后,要求外键列数据必须在主表的主键列存在或是为NULL。E、check 用于强制行数据必须满足的条件,假定在sal列上定义了check约束,并要求sal列值在1000~2000之间,如果不在1000~2000之间就会提示出错。

简述各种约束对表中数据的作用(数据库应用与开发)
数据库完整性对于数据库应用系统非常关键,其作用主要体现在以下几个方面:1.数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。2.利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整...

相似回答