数据库基础第4章创建与管理表.ppt
《数据库基础第4章创建与管理表.ppt》由会员分享,可在线阅读,更多相关《数据库基础第4章创建与管理表.ppt(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第4 4章章 创建与管理表创建与管理表本章学习目标本章学习目标l 了解表的基础知识了解表的基础知识l 熟练创建与管理表熟练创建与管理表l 熟练掌握表的数据操作方法熟练掌握表的数据操作方法4.1 4.1 创建表创建表表的创建是使用表的前提。表定义为列的集合,数据在表的创建是使用表的前提。表定义为列的集合,数据在表中是按行和列的组织形式排列的,每一行代表惟一的一条表中是按行和列的组织形式排列的,每一行代表惟一的一条记录,每一列则代表记录中的一个域。在记录,每一列则代表记录中的一个域。在SQLServer2000SQLServer2000中,每个数据库中最多可以创建中,每个数据库中最多可以创建20
2、0200万个表,用户创建数据万个表,用户创建数据库表时,最多可以定义库表时,最多可以定义10241024列,也就是可以定义列,也就是可以定义10241024个字段。个字段。在在SQLServer2000SQLServer2000中,可以使用企业管理器和使用中,可以使用企业管理器和使用CREATETABLECREATETABLE语句两种方法创建表。语句两种方法创建表。4.1.1 4.1.1 使用企业管理器创建表使用企业管理器创建表【例【例4-14-1】使用企业管理器创建】使用企业管理器创建“系部表系部表”。在控制台树中展开在控制台树中展开XSCJXSCJ数据库。数据库。右击【表】,在弹出的菜单中
3、单击【新建表】命令,出现右击【表】,在弹出的菜单中单击【新建表】命令,出现如图如图4-14-1所示的对话框。所示的对话框。图4-1【新建表】对话框在该对话框中,需要对表的内容进行定义,其具体内容为:l 输入列名。列名在表中必须惟一,列的命名必须遵守SQL Server数据库对象的命名规则。l 选择正确的数据类型、数据长度和精度,有关数据类型的相关知识可以参见2.1.3 Transact-SQL语法元素一节的内容。l 规定该列的数据可否为空。l 设置表的主键和索引。创建主键的方法非常简单,首先选中要建立主键的列,单击工具栏的【设置主键】按钮即可。建立为主键的列旁会出现一个小钥匙形的标志。本例在【
4、列名】中输入“系部编号”,【数据类型】框中选择“char”,在【长度】中输入长度“2”,不允许为空。继续设置列,在【列名】中输入继续设置列,在【列名】中输入“系部名称系部名称”,【数据类,【数据类型】框中选择型】框中选择“char”“char”,在【长度】中输入长度,在【长度】中输入长度“16”“16”,不,不允许为空。允许为空。设置完成后,如图设置完成后,如图4-24-2所示。所示。图4-2使用企业管理器创建“系部表”单击企业管理器工具栏上的【保存】按钮,出现如图单击企业管理器工具栏上的【保存】按钮,出现如图4-4-3 3所示的对话框,输入表名所示的对话框,输入表名“系部表系部表”,最后单击
5、【确定,最后单击【确定】按钮完成表的创建。】按钮完成表的创建。图4-3为创建的表命名【例4-2】使用企业管理器创建“学生基本信息表”。在控制台树中展开XSCJ数据库。右击【表】,在弹出的菜单中单击【新建表】命令。本例在【列名】中输入本例在【列名】中输入“学号学号”,【数据类型】框中选择,【数据类型】框中选择“char”“char”,在【长度】中输入长度,在【长度】中输入长度“8”“8”,不允许为空。,不允许为空。继续设置列,在【列名】中输入继续设置列,在【列名】中输入“姓名姓名”,【数据类型】框,【数据类型】框中选择中选择“char”“char”,在【长度】中输入长度,在【长度】中输入长度“1
6、2”“12”,不允许为空。,不允许为空。继续设置列,在【列名】中输入继续设置列,在【列名】中输入“性别性别”,【数据类型】框,【数据类型】框中选择中选择“char”“char”,在【长度】中输入长度,在【长度】中输入长度“2”“2”,不允许为空。,不允许为空。继续设置列,在【列名】中输入“族别”,【数据类型】框中选择“char”,在【长度】中输入长度“8”,不允许为空。继续设置列,在【列名】中输入“出生日期”,【数据类型】框中选择“datetime”,在【长度】中输入长度“8”,不允许为空。继续设置列,在【列名】中输入“政治面貌”,【数据类型】框中选择“char”,在【长度】中输入长度“8”,
7、不允许为空。继续设置其他列,完成后的表结构如图继续设置其他列,完成后的表结构如图4-44-4所示。所示。单击企业管理器工具栏上的【保存】按钮,输入单击企业管理器工具栏上的【保存】按钮,输入表名表名“学生基本信息表学生基本信息表”,最后单击【确定】按钮,最后单击【确定】按钮完成表的创建。完成表的创建。图4-4使用企业管理器创建“学生基本信息表”4.1.2 4.1.2 使用使用CREATE TABLECREATE TABLE语句创建表语句创建表 其语法形式如下:其语法形式如下:CREATETABLECREATETABLE 数据库名数据库名.拥有者名拥有者名.表名表名(列名列名 列的属性列的属性 ,
8、n)n))其中:列的属性包括列的数据类型、列的长度、列上的约束其中:列的属性包括列的数据类型、列的长度、列上的约束等。等。【例4-3】使用SQL语句创建“班级表”、“课程信息表”、“成绩表”。在查询分析器中运行如下命令:USEXSCJUSEXSCJGOGOCREATETABLECREATETABLE班级表班级表(班级编号班级编号char(8)NOTNULL,char(8)NOTNULL,系部编号系部编号char(2)NOTNULL,char(2)NOTNULL,班级名称班级名称char(16)NOTNULLchar(16)NOTNULL)GOGOCREATETABLECREATETABLE课程
9、信息表课程信息表(课程编号char(4)NOTNULL,课程名称char(30)NOTNULL,学分decimal(5)NOTNULL,学时decimal(5)NOTNULL,考核类型char(6)NOTNULL,任课教师char(12)NOTNULL,系部编号char(2)NOTNULL,上课时间char(40)NOTNULL)GOGOCREATETABLECREATETABLE成绩表成绩表(学号学号char(8)NOTNULL,char(8)NOTNULL,课程编号课程编号char(4)NOTNULL,char(4)NOTNULL,成绩成绩decimal(9)NOTNULLdecimal(
10、9)NOTNULL)GOGO4.2 4.2 管理表管理表4.2.1 4.2.1 修改表结构修改表结构1 1 1 1使用企业管理器修改表结构使用企业管理器修改表结构使用企业管理器修改表结构使用企业管理器修改表结构使用企业管理器可以修改表的定义,包括添加、删除列,使用企业管理器可以修改表的定义,包括添加、删除列,更改列的名称、类型和长度。也可以添加、删除、修改约束,更改列的名称、类型和长度。也可以添加、删除、修改约束,启用或禁用约束和触发器等。具体操作时只需右击要修改的启用或禁用约束和触发器等。具体操作时只需右击要修改的表,在弹出的菜单中选择【设计表】命令即可。表,在弹出的菜单中选择【设计表】命令
11、即可。【例4-4】使用企业管理器修改XSCJ数据库中的“课程信息表”,将“课程编号”列设置为主键。在控制台树中展开XSCJ数据库,单击【表】。在详细列表中右击【课程信息表】,在弹出的菜单中单击【设计表】命令。选中要建立主键的列“课程编号”,单击企业管理器工具栏的【设置主键】按钮即可。建立为主键的列旁即出现一个小钥匙形的标志。单击企业管理器工具栏上的【保存】按钮完成表的修改。2 2 2 2使用使用使用使用ALTER TABLEALTER TABLEALTER TABLEALTER TABLE语句修改表结构语句修改表结构语句修改表结构语句修改表结构(1 1 1 1)修改表设置主键)修改表设置主键)
12、修改表设置主键)修改表设置主键基本语法如下:基本语法如下:ALTERTABLEALTERTABLE表名表名ADDCONSTRAINTADDCONSTRAINT约束名称约束名称PRIMARYKEYCLUSTEREDPRIMARYKEYCLUSTERED(列名列名,)其中:ADDCONSTRAINT表示增加约束。PRIMARYKEY表示主键。CLUSTERED表示聚集索引,一般主键为聚集索引。【例【例4-54-5】使用】使用SQLSQL语句把语句把“课程信息表课程信息表”的的“课程编号课程编号”列列设置为主键设置为主键“PX_“PX_课程信息表课程信息表”,再将其删除。,再将其删除。在查询分析器中
13、运行如下命令即可:在查询分析器中运行如下命令即可:USEXSCJUSEXSCJGOGOALTERTABLEALTERTABLE课程信息表课程信息表ADDCONSTRAINTPX_ADDCONSTRAINTPX_课程信息表课程信息表PRIMARYKEYCLUSTEREDPRIMARYKEYCLUSTERED(课程编号课程编号)GOGO(2 2 2 2)添加列)添加列)添加列)添加列向表中增加一列时,应使新增加的列有默认值或允许为空值,向表中增加一列时,应使新增加的列有默认值或允许为空值,SQLServerSQLServer将向表中已存在的行填充新增列的默认值或空值,将向表中已存在的行填充新增列的
14、默认值或空值,如果既没有提供默认值也不允许为空值,那么新增列的操作如果既没有提供默认值也不允许为空值,那么新增列的操作将出错,因为将出错,因为SQLServerSQLServer不知道该怎么处理那些已经存在的不知道该怎么处理那些已经存在的行。行。向表中添加列的语句格式如下:向表中添加列的语句格式如下:ALTERTABLEALTERTABLE表名表名ADDADD列名列名 列的描述列的描述【例4-6】向“学生基本信息表”中添加“Email:”列。在查询分析器中运行如下命令:USEXSCJGOALTERTABLE学生基本信息表ADDEmail:varchar(20)NULLGO(3 3 3 3)删除
15、列)删除列)删除列)删除列删除一列的语句格式为:删除一列的语句格式为:ALTERTABLEALTERTABLE表名表名DROPDROP列名列名【例4-7】将“学生基本信息表”中添加的“Email:”列删除。在查询分析器中运行如下命令:USEXSCJGOALTERTABLE学生基本信息表DROPCOLUMNEmail:GO(4 4)修改列定义)修改列定义表中的每一列都有其定义,包括列名、数据类型、数据长度以及是否允许为空值等,这些值都可以在表创建好以后修改。修改列定义的语句格式为:ALTERTABLE表名ALTERCOLUMN列名列的描述【例【例4-84-8】将】将“学生基本信息表学生基本信息表
16、”中的中的“姓名姓名”列改为最大长列改为最大长度为度为2020的的varcharvarchar型数据,且不允许空值。型数据,且不允许空值。在查询分析器中运行如下命令:在查询分析器中运行如下命令:USEXSCJUSEXSCJGOGOALTERTABLEALTERTABLE学生基本信息表学生基本信息表ALTERCOLUMNALTERCOLUMN姓名姓名varchar(20)NOTNULLvarchar(20)NOTNULLGOGO默认状态下,列是被设置为允许空值的,将一个原来允许空默认状态下,列是被设置为允许空值的,将一个原来允许空值的列改为不允许空值,必须在以下两个条件满足时才能成值的列改为不允
17、许空值,必须在以下两个条件满足时才能成功:功:列中没有存放是空值的记录列中没有存放是空值的记录在列上没有创建索引在列上没有创建索引4.2.2 4.2.2 表的更名表的更名1 1 1 1使用企业管理器重新命名表使用企业管理器重新命名表使用企业管理器重新命名表使用企业管理器重新命名表【例【例4-94-9】使用企业管理器将】使用企业管理器将XSCJXSCJ数据库中的数据库中的“成绩表成绩表”更名为更名为“学生成绩表学生成绩表”。在控制台树中展开在控制台树中展开XSCJXSCJ数据库,单击【表】。数据库,单击【表】。在详细列表中右击在详细列表中右击“成绩表成绩表”,在弹出的菜单中选择【,在弹出的菜单中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 基础 创建 管理
限制150内