SQL server 数据库的表管理

一表的基本概念

·包含数据库中所有数据的数据库对象;由行和列组成;每一行代表一条唯一的记录,每一列代表记录中的一个字段

列:每一列代表由表建模的对象的某个属性;如一个产品有ID列、颜色列、重量列等

行:每一行代表由表建模的对象的一个单独的实例;如每个产品在表中均占一行

1数据完整性规则

·为了维护数据库中的数据与现实世界的一致性,它是应防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。关系数据库的数据与更新操作必须遵守下列四类完整性规则

1)实体完整性

·将行定义为特定表的唯一性

·使用唯一索引、唯一约束或主键约束,强制表的标示符列或主键的完整性;要求主键对应的属性不能取空值

2)域完整性

·指定某一列的值是否有效和是否允许为空值

·如定义字段"性别"只能取值"男"或"女",不能出现"male"或"female"等值;及限制格式或限制可能值的范围

3)引用完整性

·如果两个表相互关联,不允许引用不存在的元组

·确保所有表中数据的一致性,不允许引用不存在的值

·使用外键约束、 CHECK约束

    4)用户定义的完整性

     ·针对某一具体数据的约束条件,由应用环境决定

·制定特定的业务规则

·使用列级约束、表级约束、存储过程

2 主键

用于唯一标识表中的行数据;由一个或多个字段组成;具有唯一性;不允许取空值(NULL);一个表只能有一个主键

1)主键(Primary Key

·通过定义主键可以保证实体的唯一性、一个主键值对应一行数据、由一个或多个字段组成,其值具有唯一性、不允许取空值(NULL)、一个表只能有一个主键

2)候选键

·能唯一标识表的一行而又不含有多余属性的属性集、表中可以有多个候选键、只能有一个候选键可以选作表的主键

3)外键(Foreign Key)

·通过外键可以将多个表关联起来、将表中主键值的列添加到另一个表中,这个列就称为第二个表的外键

二数据表的介绍

    ·创建表的过程主要就是定义表中各个列的过程,而行则是在向表中写入数据时产生的

    ·每个数据库对多可以存储20亿个表,每个表可以有1024列;表的行数及总大小仅受可用存储空间的限制,每行最多可以存储8060字节;创建表时必须指定表名、列名、数据类型等信息

    1 数据类型

    ·是数据的一种属性,用于指定对象可保存的数据类型,包括整数数据、字符数据、货币数据、货币数据、日期和时间数据等

1)精准数字

2) 近似数字

3) 字符串

4) Unicode字符串

5) 二进制字符串

   6)日期和时间

2默认值

·如果没有为列指定值,则使用默认值;如常量、内置函数或数学表达式

·如果没有为列指定默认值,如果允许空值,则使用"NULL"显示;不允许空值,则比需指定值,否则无法保存

3标示符

    ·对于每个表均可创建一个包含系统生成的序号值的标识符列,该序号值以唯一方式标识表中的每一行

包含系统自动生成的序号值的列,特点如下

·列值由系统按一定规律生成,不允许空值

·列值不能重复,唯一标识表中每一行

·每个表只能有一个标识列

创建标识符列(自增列)

·类型(type)

必须是数值类型,如:decimal、int

·种子(seed)

指派给表中第一行的值,默认为1

·递增量(increment)

相邻两个标识值之间的增量,默认为1

4检查约束

·限制列可接受的值

·通过逻辑表达式创建检查(CHECK)约束

·例如,限制"成绩"列的取值范围为 0 ~ 100

·逻辑表达式:成绩 >= 0 and 成绩 <= 100

三 管理表

    1 创建表

    ·在主界面中展开需要创建表的数据库,右击"表",选择"新建表",开始输入第一列的名称,选择数据类型,取消选中"允许NULL值"(第一列一般为标示符列,不允许为空),直接关闭,选择"是",然后输入表名,单击确定即可保存

    2 修改表结构        

右击需要修改的表,选择"设计"

    ·新建列:直接输入新的列名和数据类型即可

    ·设置主键:右击需要设置为主键的列名,选择"设置主键",或者按住ctrl键,再点击鼠标左键选择多个列名后再右击选择"设置主键

    ·CHECK约束:右击需要约束的列,选择"CHECK约束",然后在(常规)文本框中输入表达式即可,如"成绩>0 and 成绩<100"

3 编辑表

右击需要编辑的表,选择"编辑前200行",然后进行数据录入

4 删除表

选择需要删除的表右击选择"删除",单击"确定"即可