oracle SQL语句怎么修改数据表的字段允许为空?

 我来答
床前明月儿
高能答主

2019-06-03 · 探索生活中的另一种可能
床前明月儿
采纳数:101 获赞数:171947

向TA提问 私信TA
展开全部

字段允许为空的语句为:alter table  表名 alter column 列名 类型长度 null。

数据库SQL语言的修改语句,可以用来修改基本表,其一般表示格式为:

ALTER TABLE<表名>[改变方式]

改变方式:

1、 加一个栏位: ADD "栏位 1" "栏位 1 资料种类"

2、删去一个栏位: DROP "栏位 1"

3、改变栏位名称: CHANGE "原本栏位名" "新栏位名" "新栏位名资料种类"

4、改变栏位的资料种类: MODIFY "栏位 1" "新资料种类"

扩展资料

如需在表中添加列,请使用下面的语法:  ALTER TABLE table_name   ADD column_name datatype

如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):ALTER TABLE table_name    DROP COLUMN column_name

要改变表中列的数据类型,请使用下面的语法:

SQL Server / MS Access:ALTER TABLE table_name   ALTER COLUMN column_name datatype

My SQL / Oracle:ALTER TABLE table_name   MODIFY COLUMN column_name datatype

Oracle 10G 之后版本:ALTER TABLE table_name  MODIFY column_name datatype;

参考资料链接:百度百科-Alter语句

Dream影视赏析
2018-09-21
知道答主
回答量:4
采纳率:0%
帮助的人:3211
展开全部
  1. 当该字段为空时,可直接修改:
    alter table reportqymx modify shuifen null;

2.当待修改字段不为空时: 

新增一列
把要改变的列的值转移过去并清空原列的值
改变列的数据类型
把值转移回来,并删除新增的列 

alter table reportqymx add shuifen_temp number(10); 

update reportqymx set shuifen_temp=shuifen;  

alter table reportqymx modify shuifen null;  

update reportqymx set shuifen=shuifen_temp;  

alter table reportqymx drop column shuifen_temp;

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f671e9c5
推荐于2018-09-23
知道答主
回答量:25
采纳率:100%
帮助的人:8.5万
展开全部
alter table table_name modify col_name null;
如果表中有数据的话,你需要先增加一个字段,然后drop掉之前的字段,然后再将新字段名rename成之前的字段名
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
SDMG123
2018-09-21 · TA获得超过6178个赞
知道大有可为答主
回答量:6676
采纳率:80%
帮助的人:701万
展开全部
建表的时候,字段属性默认null 也就是允许为空,如果修改成 not null就算不为空。
你要从新设置的话,只能修改字段属性了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
huoyeshenhua
2018-09-21 · TA获得超过5220个赞
知道小有建树答主
回答量:892
采纳率:85%
帮助的人:479万
展开全部

网页链接

1、当字段没有数据或者要修改的新类型和原类型兼容时,可以直接modify修改。

2、当字段有数据并用要修改的新类型和原类型不兼容时,要间接新建字段来转移。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(13)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式