oracle修改默认值语句,oracle 修改默认值(转载)

将一个列的默认值修改为null之后,和没改之前数据字典的差别

--0 创建测试表,对默认值没有进行任何指定

SQL> create table T_DEFAULT_TEST (id number);

表已创建。

--1 查看数据字典,DATA_DEFAULT没有值

SQL> select A.COLUMN_NAME,A.DATA_DEFAULT

2 from user_tab_columns a where a.TABLE_NAME = 'T_DEFAULT_TEST';

COLUMN_NAME DATA_DEFAULT

------------------------------ ----------------------------------------

ID

--2 修改默认值为1

SQL> alter table T_DEFAULT_TEST modify (id default 1);

表已更改。

--查看数据字典,DATA_DEFAULT为1,正常

SQL> select A.COLUMN_NAME,A.DATA_DEFAULT

2 from user_tab_columns a where a.TABLE_NAME = 'T_DEFAULT_TEST';

COLUMN_NAME DATA_DEFAULT

------------------------------ ----------------------------------------

ID 1

--3 修改默认值为null,也就是取消默认值的设定,

SQL> alter table T_DEFAULT_TEST modify (id default null);

表已更改。

--结果和预期不一样,预期DATA_DEFAULT不显示任何东西,结果显示null

SQL> select A.COLUMN_NAME,A.DATA_DEFAULT

2 from user_tab_columns a where a.TABLE_NAME = 'T_DEFAULT_TEST';

COLUMN_NAME DATA_DEFAULT

------------------------------ ----------------------------------------

ID null

从现在开始数据字典种DATA_DEFAULT就像牛皮糖一样,怎么也去不掉,无论如何都无法回复到初始状态

COLUMN_NAME DATA_DEFAULT

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值