上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
实例018 使用ALTER TABLE命令修改字段
【实例描述】
前面实例介绍的是使用ALTER TABLE命令能够增加新的字段,ALTER TABLE命令还可以为一个已经存在的表修改其已有的字段,修改一般包括对其字段名、数据类型、长度和相关的完整性约束的修改。
本实例对于上述基本表STU,该表在创建时没有为SNAME字段设定NOT NULL,现需要为该表的SNAME字段设置NOT NULL,同时将其默认值设置为“无”,并将字段长度改成15个字节。本实例执行完成后,在SQL*Plus中查看表结构,如图2-5所示。
图2-5 修改后的表结构
【实现代码】
SQL> ALTER TABLE STU 2 MODIFY SNAME VARCHAR2(15) 3 DEFAULT '无' 4 NOT NULL 5 /
【范例解析】
本实例使用ALTER TABLE命令修改字段。与实例017添加字段类似的,修改字段也使用ALTER TABLE命令来完成。在Oracle PL/SQL中,使用ALTER TABLE命令用于修改字段的常用格式为:
ALTER TABLE 〈表名1〉 MODIFY [COLUMN] 〈字段名1〉〈字段类型〉[(〈长度〉[,〈小数位数〉])] [DEFAULT〈表达式1〉] [NULL | NOT NULL]
其中,表名1指明被修改表的表名,MODIFY是修改字段的关键字,在T-SQL中该关键字是ALTER。在使用该命令语句设定DEFAULT时,其操作与CREATE TABLE命令相同,指定默认值后使用DESC命令在SQL*Plus中不会显示,读者可以试着打开PL/SQL Developer工具,连接登录后在左侧的树形目录中执行【Tables】|【STU】命令,右键单击后,在弹出的快捷菜单中执行【查看】命令,显示如图2-6所示的对话框,该对话框即以图形方式显示了STU表的参数。
图2-6 查看表STU
注意:如果字段数据类型为字符型,在指定该字段默认值时,需要使用一对单引号括起来,数值型数据类型则不必。