Oracle删除带有默认值的字段
1、平常,我们删除某个字段的方式为:
ALTER TABLE 表名
DROP COLUMN 字段名;
但是,上面这种语句不能删除数据表中有主键约束和默认值的字段。即如果像下面这样建立的字段“学号”和“课号”都不行:
CREATE TABLE students
(学号 char(4),课号 char(3),考试成绩 decomal(6,2),CONSTRAINT xh_kh PRIMARY KEY(学号)
);
或者,后期加进去的:
ALTER TABLE students
ADD
课号 char(3) DEFAULT '0001';
2、如何解决?
因为出现这种异常的原因为:在生成主键或者默认值的时候,系统会为对应字段生成一个唯一值约束或者默认值的名称,用来保护该字段的唯一性约束和默认值。
所以,我们只要将该约束名或者默认值名删掉,就可以删除该字段了。如下:
ALTER TABLE 表名
DROP CONSTRAINT 约束名|默认值名;
执行完上述语句,然后再执行,删除字段语句,即可,如下:
ALTER TABLE students
DROP COLUMN 课号;
命令已成功完成。
Oracle删除带有默认值的字段相关推荐
- SQL删除带有默认值的字段
语法:需要先删除对应的默认值,然后再删除列 1 . alter table tableName(表名) drop constraint '默认值约束名' 2 . alter table talbeNa ...
- SQL 2005 删除带有默认值约束的列
在sqlserver 2005中要删除某一列: alter table [表名] drop column [列名] 但是如果该列被创建了默认值约束,我们就只能先删除默认值约束,然后才能删除该列. 第一 ...
- ORACLE ---注释,默认值,同义词
ORACLE -注释,默认值,同义词 注释 对表本身或表中的每个字段添加一段解释说明,使得初次接触该表的开发人员能尽快了解该表. 体现: 1.表结构描述中 2.查询结果某行数据纵向展示时 创建注释: ...
- Boost:以协程的方式实现带有默认值的echo服务器的实例
Boost:以协程的方式实现带有默认值的echo服务器的实例 实现功能 C++实现代码 实现功能 boost::asio模块,以协程的方式实现带有默认值的echo服务器的实例 C++实现代码 #inc ...
- oracle创建列默认值,表列添加默认值的方法
在修改表结构时,有时候会涉及到添加默认值. 下面是在11.2.0.3版本数据库中进行测试的结果: Connected to Oracle Database 11g Enterprise Edition ...
- Oracle11g新特性:在线操作功能增强-表增加包含默认值的字段(转载)
在11g以前,表中新增一个NOT NULL的字段是十分痛苦的事情,尤其是表很大的情况.不光是执行速度慢,而且由于现有数据长度的变化,很容易造成表中大量的行链接情况. 在11g中,这种情况得到了彻底的改 ...
- oracle sql列默认值,sql – Oracle:指定对象类型列的默认值
我有一个带有no-args构造函数的对象类型,但是当我将它指定为该类型列的默认值时,我得到ORA-00904:无效的标识符错误. 例: CREATE OR REPLACE TYPE test_t AS ...
- hibernate 向数据库里设置了默认值的字段添加数据为null时失效的问题
写ssh项目时设置了一个int类型的字段,想让他添加的时候默认为1 结果添加的时候不输入数据的话会将null转成0添加 最后再映射hbm文件里的property下设置insert="fals ...
- [delphi]参数带有默认值的函数
//带默认值的参数只能在后面 function MyFun(a:Integer; b:Integer=1; c:Integer=2): Integer; begin Result := a + b ...
最新文章
- 用ldap方式访问AD域的的错误解释
- Kaggle 机器学习竞赛冠军及优胜者的源代码汇总
- 深入理解Fabric环境搭建的详细过程
- 微型计算机原理设计存储系统,微机原理与接口技术存储器设计.pdf
- 无法搜索到电脑模拟热点的可以尝试一下(adhoc补丁)
- spring boot + mybatis + layui + shiro后台权限管理系统
- NPOI读写Excel sheet操作
- 同步类容器与并发类容器
- U盘启动装系统的操作方法(U盘PE启动安装GHOST XP)
- 企业微信(WeCoom)私有化客户端Api解决方案
- SourceOffsite安装配置
- 计算机iso接口是什么意思,isofit和isofix接口什么区别
- linux4.6内核lcd驱动源代码,提供基于linux-2.6.32.2 内核100%完全可以使用的驱动源代码,绝无库文件,敬请放心使用。...
- 思科路由器如何导出配置文件_在思科路由器上保存超大的配置文件
- 大数据分析-实验五 pdfminer
- 软件测试是干什么的 什么样的人才能够当软件测试员?
- swiper——AutoPlay
- linux if 判断文件,shell中的逻辑判断,if 判断文件、目录属性,if判断的一些特殊用法...
- 如何解决WIN11系统在安装HyperV虚拟机,网络桥接后网络上传慢的问题
- 虚函数占用类空间大小(转)
热门文章
- 智能控制 复习资料之第三章专家系统
- 移动端H5页面,关闭手机键盘!
- 要想成为JAVA高手必须先刻苦
- Dell XPS15 4K GTX1050 ubuntu16.04系统安装+分辨率设置
- 第十四章:监测和维护活动目录(一)(译自WindowsServer2008ActiveDirectoryResourceKit)
- 【Nginx】Nginx简介
- Whale帷幄 - 企业数字化解决方案服务商 数字化方案提供商
- 无法打开文件“libboost_thread-vc120-mt-gd-1_58.lib的解决办法
- Windows boost 下编译 python 库 boost_python-vc120-mt-1_58.lib
- 教师计算机培训汇报ppt,教师计算机培训(教师).ppt