`

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
分享到:
评论

相关推荐

    oracle自动内存设置修改默认值

    oracle 自动内存 设置 修改默认值

    oracle timestamp详解

    oracle timestamp详解 将常用的转换方法及使用注意事项都罗列出来了

    oracle修改实例名

    标题《oracle修改实例名》与描述《修改oracle数据库的实例名,修改oracle数据库的实例名》暗示本文主要讲述的是在Oracle数据库中如何修改数据库实例名称的操作。实例名(也称作SID,即系统标识符)是数据库安装后在...

    Oracle 修改字符集

    在Oracle数据库管理中,有时我们需要更改数据库的字符集以适应不同的语言环境或解决数据兼容性问题。本文将详细介绍如何修改Oracle数据库的字符集,并提供实际操作步骤。 #### 一、理解Oracle字符集 1. **字符集...

    oracle修改版本工具

    标题提到的“Oracle修改版本工具”就是这样一个用于便捷地调整Oracle数据库版本的实用程序。 Oracle数据库的版本升级通常涉及到多个步骤,包括计划、备份、安装新版本、数据迁移、测试和恢复等。这个工具可能简化了...

    修改oracle_sid和db_name名字

    修改 Oracle_sid 和 db_name 名字 在 Oracle 数据库中,sid 和 db_name 是两个非常重要的参数,分别表示数据库实例名和数据库名字。修改这两个参数需要谨慎,因为它们对数据库的运行和性能有着直接的影响。在本文中...

    oracle修改字符集

    针对这种情况,我们可以按照以下步骤来修改Oracle 11g数据库的字符集,使其更改为ZHS16GBK。 首先,确保你有数据库的系统管理员权限,因为修改字符集需要以SYSDBA身份进行。在Windows环境下,打开命令行窗口(cmd)...

    oracle修改最大连接数

    ### Oracle 修改最大连接数 在Oracle数据库环境中,调整最大连接数是一项重要的系统管理任务,它直接影响到数据库能够同时处理的会话数量。本篇将详细探讨如何通过Oracle参数来修改最大连接数,包括理解相关参数的...

    oracle修改表结构

    在Oracle数据库管理中,对表结构进行修改是一项常见的任务,涉及到添加字段、修改字段属性、删除字段、重命名表或字段、以及注释等操作。以下是对这些操作的详细解析: ### 添加字段 使用`ALTER TABLE`语句可以向...

    oracle修改配置tnsnames

    oracle修改配置tnsnames

    Oracle 增加修改删除字段

    ### Oracle数据库中对表结构进行增加、修改及删除操作详解 在Oracle数据库中,我们经常需要对现有的表结构进行调整,比如增加新的字段、修改现有字段的属性或数据类型、删除不再使用的字段等。这些操作可以通过`...

    ORACLE 修改redo日志文件 大小的方法

    每当有数据修改时,Oracle会首先将这些更改写入redo日志文件,然后再更新到数据文件中。这种机制确保了在系统崩溃或突然断电的情况下,可以通过redo日志文件恢复未完成的事务,从而保证数据库的一致性和完整性。 ##...

    oracle修改用户名密码

    oracle 修改用户名密码

    Oracle DMP 文件修改版本号

    本文将详细讲解如何修改Oracle DMP文件的版本号,以及涉及的相关技术。首先,DMP文件本质上是二进制格式,直接编辑可能会破坏其结构,因此通常不建议直接修改。然而,对于开发和测试环境,有时会通过特定工具或编程...

    oracle导入更改版本号

    - **修改版本信息**:如果需要更改版本号,可能需要编辑导出文件中的元数据,但这通常不是推荐的方法,因为可能会导致数据一致性问题。 - **导入数据**:在目标数据库上,使用Data Pump的`impdp`命令导入数据。 -...

    Linux下修改Oracle用户密码

    本文将深入解析在Linux操作系统中如何安全有效地修改Oracle数据库用户的密码,包括操作步骤、注意事项以及相关原理。 ### 深入理解Linux下修改Oracle用户密码 #### 一、前期准备与环境要求 在开始修改Oracle用户...

    修改oracle数据库用户名及密码

    在这里,我们可以找到需要修改的用户的 user#,例如 ARWEN 用户的 user# 是 250。 知识点 3: 修改用户名 修改用户名需要使用 UPDATE 语句,命令为 `SQL> UPDATE USER$ SET NAME='新用户名' WHERE USER#=38;`。这里...

    Oracle 修改数据库库表的各种情况和SQL语句

    ### Oracle 修改数据库库表的各种情况和SQL语句 在日常的数据库管理与开发工作中,我们经常需要对现有的数据库表结构进行调整以满足业务需求的变化。本文将详细介绍在Oracle数据库中如何针对不同情况来修改数据库表...

    Oracle之dblink的配置

    Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置

Global site tag (gtag.js) - Google Analytics