第三章 管理数据库对象
1.数据库对象
数据库里定义的,用于存储或引用数据的对象,比如表,视图,族,序列,索引和异名。
2.规划
规划是与数据库某个用户名相关联的数据库对象集合。相应的用户名被称为规划所有人,或是关联对象的所有人。数据库里可以有一个或多个规划。用户名只与同名规划相关联,通常情况下反之亦然。一般来说,当用户创建一个对象时,就是在自己的规划里创建了它,除非明确指定在另一个规划里创建它,因此,根据在数据库里的权限,用户可以创建,操作和删除对象。规划可以包含一个表,也可以包含无数个对象,其上线由具体的SQL实现规定。 (EMPLOYEE_TBL -->USER1.EMPLOYEE)
3.表
数据的主要存储方式
字段在关系型数据库里也被称为列。行是数据库表里的一条记录。
4.CREATE TABLE
CREATE TABLE table_name
(
field1 data_type [ not null],
field2 data_type [ not null],
field3 data_type [ not null],
fieldn data_type [ not null]
);
5.ALTER TABLE
ALTER TABLE TABLE_NAME ALTER COLUMN COLUMN_NAME new_type(SQL Server)
在表被创建之后,我们可以使用ALTER TABLE命令对其进行修改。可以添加,删除列,修改列的定义,添加和去除约束,在某些实现中还可以修改表STORAGE值。
ALTER TABLE命令的标准如下:
ALTER TABLE table_name [ modify ] [ column column_name] [datatype] [ not null ] [ restrict | cascade] [ drop] [constraint] [add] [column] column definition
6.添加列
自动列如果表已经有数据存在,这是添加的列当然就不能定义为NOT NULL
列变更的通用规则:
列的长度可以增加到特定数据类型所允许的最大长度
如果想缩短某列的长度,则必须要求这一列在表里所有数据的长度都小于或等于新的长度
数值数据的位数可以增加
如果缩短数值数据的位数,则必须要求这一列表里所有的数值的位数都小于或等于新指定的位数
数值里的小数位数可以增加或减少列的数据类型一般是可以改变的
7.删除表6.从现有表新建另一个表(MySql和Oracle都支持)
(sql server)
8.完整性约束
(1)主键约束
主键是表里一个或多个用于实现记录唯一性的字段。主键的作用在于表里每条记录都有唯一的值。
(2)唯一性约束
唯一性约束要求表里某个字段的值在每条记录里都是唯一的,这一点与主键类似。 用UNIQUE约束
(3)外键约束FOREIGN KEY
子表里的EMP_ID字段引用附表里的EMP_ID字段。为了在自表里插入一个EMP_ID的,它首先要存在于附表的EMP_ID里。类似的,父表里删除一个EMP_ID的值,自表里相应的EMP_ID值必须全部被删除,这就是引用完整性约束
(4)NOT NULL约束
(5)检查约束
(6)去除约束
利用ALTER TABLE命令的DROP CONSTRAINT选项可以去除已经定义的约束。
(有些实现中允许中止约束,这样我们可以选择暂时中止它而不是从数据库里去除它,稍后还可以再启动它)
ALTER TABLE TABLE_NAME DROP CONSTRAINT CONSTRAINT_NAME
本文介绍了数据库对象的基础概念,包括表、视图等,并详细讲解了如何通过SQL命令创建、修改和删除表,以及如何实施各种完整性约束。

被折叠的 条评论
为什么被折叠?



