什么是数据完整性?数据库
数据完整性 = 数据准确性 + 数据可靠性ide
数据完整性如何分类?编码
1,实体完整性 (行)spa
2,域完整性 (列)code
3,引用完整性 (表与表之间键的关系)ci
4,自定义完整性unicode
如何保证数据的完整性?字符串
必须在建表时分别对数据库实施完整性约束:it
实体完整性约束table (行) |
主键约束(primary key) 惟一约束(unique) |
域完整性约束 (列) |
数据类型 非空约束(not null) |
引用完整性约束 (两表) |
外键约束(foregin key) |
自定义完整性约束 |
规则、存储过程、触发器 |
要建表保存数据时,就必须肯定保存的数据类型,那么T-SQL中有哪些数据类型?
数字 |
整数 int 小数 float real numric decimal |
字符串 |
固定长度字符串 char 可变长度字符串 varchar unicode编码固定长度字符串 nchar unicode编码可变长度字符串 nvarchar 大文本 text unicode编码大文本 ntext |
日期 |
datetime |
真假 |
bit |
其余 |
货币 money |
数据类型注意事项:
时间日期类型和字符串类型是放在一对儿单引号中的.例如:'2010-1-22'
主要约束的实现
1.主键
主键列要求:不重复而且不能有空值
主键选取方法:
u表中存在能够用来惟一标识表中行的列,则直接选取该列做为主键列.如学号列
u表中没有能够用来惟一标识表中行的列,则能够经过建立组合主键来进行标识,具体操做,选取多列,将选中列一并设置为主键.
2.标识列
标识列要求:该列的数据类型只能是int类型,而且不能有空值
如何设置标识列:
选取int类型的列,在该列的属性窗口中,将标识范围展开,设置是标识,同时设置标识增量(递增步长)和标识种子(起始标识值),默认均为1
标识列的特色:标识列会根据标识增量和标识种子每次自动增长
若是主键列的类型是int类型,则一般同时将该主键列设置为标识列.
3.主外键关系:两表之间的关系
被包含,被引用的表是主键表
外键表必定有一个列(外键列),引用主键表的主键列
能够使用数据库关系图直接拖放建立外键约束