Oracle修改表结构

本文介绍了如何在Oracle数据库中修改表结构,包括为表增加数据列和修改列的默认值。通过实例展示了如何为member表增加有无默认值的列,并强调了在IBM DB2中不支持ALTER指令修改表结构的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修改表结构

当一张数据表建立完成之后如果发现表结构不合适,则可以修改列或者是增加数据列,下面为了方便说明,首先编写如下的数据库创建脚本。

-- 删除数据表
DROP TABLE member PURGE ;

-- 创建数据表
CREATE TABLE member( mid	NUM BER ,
name	VARCHAR2(30)
) ;
-- 增加测试数据
INSERT INTO member(mid,name) VALUES (1,'张三') ; INSERT INTO member(mid,name) VALUES (2,'李四') ;
-- 提交事务

1、 为表中增加数据列

ALTER TABLE 表名称 ADD(
列名称 数据类型 [DEFAULT 默认值],
列名称 数据类型 [DEFAULT 默认值], ...)

范例: 为 member 表增加一个没有设置默认值的列

ALTER TABLE member ADD(address VARCHAR(50)) ;

范例: 为 member 表增加一个有默认值的列

ALTER TABLE member ADD(sex VARCHAR(10) DEFAULT '男') ;

此时发现 address 数据列增加之后,所有数据行对应的列信息都是 null 数据。范例: 为 member 表增加一个有默认值的列

发现此时所有数据行之中增加列上都存在了默认值,相当于更新了所有的数据行。
2、 修改列结构
范例: 修改 name 列的定义,增加默认值

ALTER TABLE member M ODIFY(name VARCHAR2(20) DEFAULT '无名氏') ;
INSERT INTO member(mid) VALUES (5) ;

从标准的 SQL 来讲,是一定要提供有数据表的修改操作的,但是从实际的开发来讲,任何人都不允许有随意修改数据表结构的想法,而且更不能说自己去修改。同时需要提醒的是在 IBM DB2 数据库之中是根本不允许修改表结构的,就不支持 ALTER 指令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值