- SQL Server 入门很轻松(微课超值版)
- 云尚科技
- 2570字
- 2021-04-04 00:09:34
4.4 修改数据表
数据表创建完毕后,它不是一成不变的,我们可以根据需要修改表中的内容,包括表字段、表名称、数据类型等,可以说,几乎所有的表内容都是可以修改的。
4.4.1 变一变数据表的名称
数据表的表名不能使用ALTER语句来修改,如果想要更改数据表的名称,我们可以使用存储过程sp_rename来进行修改,具体的语法格式如下。
sp_rename old_tablename,new_tablename;
主要参数介绍如下。
- old_tablename:数据表原来的名称。
- new_tablename:数据表修改后的名称。
实例10:修改Hotel数据库中房间信息表Roominfo的名称为new_Roominfo,在“查询编辑器”窗口中输入以下语句。
USE Hotel; sp_rename Roominfo,new_Roominfo;
单击“执行”按钮,即可完成数据表名称的修改操作,如图4-31所示。执行完成之后,刷新数据库列表,将会看到数据表名称更改后的显示效果,如图4-32所示。
图4-31 修改数据表的名称
图4-32 查看修改名称后的数据表
4.4.2 更改表字段的数据类型
使用SQL中的ALTER TABLE语句可以修改数据表中字段的数据类型,具体的语法格式如下。
ALTER TABLE table_name ALTER COLUMN column_name new_datatype;
主要参数介绍如下。
- table_name:要修改字段的数据表名称。
- column_name:要修改的字段的名称。
- new_datatype:要修改的字段新数据类型。
实例11:在Hotel数据库中,修改房间信息表Roominfo中Roomid字段的数据类型为varchar(10)。在“查询编辑器”窗口中输入以下语句。
ALTER TABLE Roominfo ALTER COLUMN Roomid VARCHAR(10);
单击“执行”按钮,即可完成数据表字段数据类型的修改操作,如图4-33所示。执行完成之后,重新打开Roominfo的表设计窗口,将会看到修改之后数据表字段的数据类型,如图4-34所示。
图4-33 执行SQL语句
图4-34 Roominfo表结构
4.4.3 表字段的添加与删除
表创建完毕后,根据实际需要我们还可以对表字段进行添加或删除操作,下面进行详细介绍。
1. 添加表字段
使用SQL中的ALTER TABLE语句可以在数据表中添加字段,具体的语法格式如下。
ALTER TABLE table_name ADD. column_name datatype;
主要参数介绍如下。
- table_name:新增加字段的数据表名称。
- column_name:新增加的字段的名称。
- datatype:新增加字段的数据类型。
实例12:在Hotel数据库中,需要给表Roominfo添加名称为Roomphone的新字段,字段数据类型为varchar(24),不允许空值。在“查询编辑器”窗口中输入以下语句。
ALTER TABLE Roominfo ADD. Roomphone varchar(24) NOT NULL
单击“执行”按钮,即可完成数据表字段的添加操作,如图4-35所示。执行完成之后,重新打开Roominfo的表设计窗口,将会看到新添加的数据表字段,如图4-36所示。
图4-35 添加新字段Roomphone
图4-36 添加字段后的表结构
2. 删除表字段
使用SQL中的ALTER TABLE语句可以删除数据表中的字段,具体的语法格式如下。
ALTER TABLE table_name DROP COLUMN column_name;
主要参数介绍如下。
- table_name:要删除字段所在数据表的名称。
- column_name:要删除的字段的名称。
实例13:删除Roominfo表中的Roomphone字段。在“查询编辑器”窗口中输入以下语句。
ALTER TABLE Roominfo DROP COLUMN Roomphone;
单击“执行”按钮,即可完成数据表字段的删除操作,如图4-37所示。执行完成之后,重新打开Roominfo的表设计窗口,将会看到删除字段后的数据表结构,Roomphone字段已经不存在了,如图4-38所示。
图4-37 删除字段
图4-38 删除字段后的表结构
4.4.4 更改表字段的名称
对于数据表中的字段名称,我们也是可以根据需要进行修改的,但是使用ALTER语句是不行的。不过,使用存储过程sp_rename可以修改表字段的名称,具体的语法格式如下。
sp_rename 'tablename.columnname','new_columnname';
主要参数介绍如下。
- tablename.columnname:原来表中的字段名称。不过,表中的字段名一定要加上单引号。
- new_columnname:新字段的名称,新字段名也要加上单引号,而且不能与表中其他字段的名称重复。
实例14:将数据表Roominfo表中的Roomphone字段名称修改为phone。在“查询编辑器”窗口中输入以下语句。
sp_rename 'Roominfo.Roomphone','phone';
单击“执行”按钮,即可完成数据表字段名的修改操作,如图4-39所示。执行完成之后,重新打开Roominfo的表设计窗口,将会看到字段名修改后的数据表结构,如图4-40所示。
图4-39 修改字段的名称
图4-40 修改字段名称后的表结构
4.4.5 以图形向导方式修改表
在SQL Server Management Studio中,我们可以以图形向导方式修改数据表,如修改表的名称、添加与删除字段、修改字段的数据类型等。
1. 重命名表名称
(1)登录到SQL Server 2017数据库中,在“对象资源管理器”窗口中选择需要重命名的数据表,如这里选中Roominfo_01数据表,右击,在弹出的快捷菜单中选择“重命名”命令,进入数据表重命名状态,如图4-41所示。
(2)输入新的数据表名称,即可完成数据表的重命名操作,如图4-42所示。
2. 添加表字段
数据表创建完成后,如果字段不能满足需要,可以再根据需要添加字段,例如,在Roominfo数据表中,增加一个新的字段,名称为Roomphone,数据类型为varchar(10),允许空值,具体操作步骤如下:
(1)选中Roominfo数据表,右击,在弹出的快捷菜单中选择“设计”命令,如图4-43所示。
图4-41 重命名状态
图4-42 数据表的重命名
图4-43 选择“设计”命令
(2)弹出的表设计窗口,在其中添加新字段Roomphone,并设置字段数据类型为varchar(10),允许空值,如图4-44所示。
(3)修改完成之后,单击“保存”按钮,保存结果,增加新字段成功,如图4-45所示。
知识扩展:在保存数据表的过程中,如果无法保存增加的表字段,会弹出相应的警告对话框,如图4-46所示。
图4-44 增加字段Roomphone
图4-45 增加的新字段
图4-46 警告对话框
要想解决这一问题,我们可以按照如下步骤进行。
(1)选择“工具”→“选项”命令,如图4-47所示。
(2)打开“选项”对话框,选择“设计器”选项,在右侧面板中取消“阻止保存要求重新创建表的更改”复选框,单击“确定”按钮即可,如图4-48所示。
图4-47 选择“选项”命令
图4-48 “选项”对话框
3. 删除表字段
在表的设计窗口中,每次可以删除表中的一个字段,操作过程比较简单,可以分为如下几步:
(1)打开表设计窗口之后,选中要删除的字段,右击,在弹出的快捷菜单中选择“删除列”命令。例如,这里删除Roominfo表中的Roomface字段,如图4-49所示。
(2)删除字段操作成功后,数据表的结构如图4-50所示。
4. 修改字段的数据类型
当数据表中字段不能满足需要时,可以对其进行修改,修改的内容包括改变字段的数据类型、是否允许空值等,修改字段数据类型可分为如下几步:
(1)在数据表设计窗口中,选择要修改的字段名称,单击数据类型,在弹出的下拉列表框中可以更改字段的数据类型,例如,将Roomphone字段的数据类型由varchar(10)修改为varchar(15),允许为空值,如图4-51所示。
图4-49 选择“删除列”命令
图4-50 删除字段后的效果
图4-51 选择字段的数据类型
(2)单击“保存”按钮,保存修改的内容,然后刷新数据库,即可在“对象资源管理器”窗口中看到修改之后的字段信息,如图4-52所示。
5. 修改字段的名称
数据表中的字段名称如果不能满足需要,可以对其进行修改,修改字段名称可分为如下几步:
(1)在数据表设计窗口中,选择要修改名称的字段,即可进入字段名称修改状态,如图4-53所示。
(2)修改字段的名称,保存修改的内容,然后刷新数据库,即可在“对象资源管理器”窗格中看到修改之后的字段名称,如图4-54所示。
图4-52 修改后的字段(1)
图4-53 选择字段的数据类型
图4-54 修改后的字段(2)
微视频