oracle添加not null约束

oracle添加not null约束在创建表时,为列添加notnull约束,形式如下:column_namedata_type[constraintconstraint_name]notnull其中,constraintconstraint_name表示为约束指定名称。也可以为已创建的表中添加notnull约束,这时就需要使用altertable…modify语句,形式如下:altert

大家好,又见面了,我是你们的朋友全栈君。在创建表时,为列添加not null约束,形式如下:
column_name data_type
[constraint constraint_name] not null
其中,constraint constraint_name 表示为约束指定名称。
也可以为已创建的表中添加not null约束,这时就需要使用alter table… modify语句,形式如下:
alter table table_name modify column_name [constraint constraint_name] not null;

删除not null约束
如果需要删除表中的裂伤的not null约束,依然是使用alter table…modify语句,形式如下:
alter table table_name modify column_name null;

具体的操作如下:
SQL> create table person(
  2  pid number(4) not null,
  3  pname varchar2(20),
  4  psex char(2)
  5  );
表已创建。
SQL> desc person;
 名称                                      是否为空? 类型
 —————————————– ——– ——————-
 PID                                       NOT NULL NUMBER(4)
 PNAME                                              VARCHAR2(20)
 PSEX                                               CHAR(2)
SQL> alter table person modify pname not null;
表已更改。
SQL> desc person;
 名称                                      是否为空? 类型
 —————————————– ——– ——————
 PID                                       NOT NULL NUMBER(4)
 PNAME                                     NOT NULL VARCHAR2(20)
 PSEX                                               CHAR(2)
SQL> insert into person values(1,’aaa’,’女’);
已创建 1 行。
SQL> insert into person values(1,’aaa’,null);
已创建 1 行。
SQL> insert into person values(1,null,null);
insert into person values(1,null,null)                           *
第 1 行出现错误:
ORA-01400: 无法将 NULL 插入 (“SYSTEM”.”PERSON”.”PNAME”)
SQL> alter table person modify pname null;
表已更改。
SQL> desc person;
 名称                                      是否为空? 类型
 —————————————– ——– ——————
 PID                                       NOT NULL NUMBER(4)
 PNAME                                              VARCHAR2(20)
 PSEX                                               CHAR(2)
SQL> insert into person values(1,null,null);
已创建 1 行。
SQL>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136320.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 2017中国程序员薪资生存现状调查报告结论_程序员的收入

    2017中国程序员薪资生存现状调查报告结论_程序员的收入程序员一直都是一个备受人们关注的群体。2014年,据IDC统计,全球约有1850万名程序员,中国占10%。随着近年全国互联网创业热潮的兴起,“互联网+”、“云计算”以及“智能硬件”等领域发展迅速,市场对程序员的需求更为旺盛。  由程序员客栈联合稀土掘金通过对北京、广东、浙江、上海等全国28个省、直辖市及特别行政区的10W+优秀程开发者进行了一次调查。调查报告里对程序员的年龄组成、性别比例、

    2022年10月11日
    3
  • Linux环境下如何安装wget(CentOS 7系统)「建议收藏」

    Linux环境下如何安装wget(CentOS 7系统)「建议收藏」问题现象:利用Linux自带的wget命令去下载安装相关应用时,提示:“sudo:wget:commandnotfound”如下图所示:问题原因:(1)Linux服务器本身没有自带安装wget,但一般很少有这种情况出现。(2)Linux服务器自带的wget版本过低,无法通过wget命令去安装其它应用。分析过程:先在Linux服务器窗口中,输入如下命令,检查Linux服务器有没有安装过wget。如果出现如下图所示,则说明已经安装过wget,但版本过低,需要将原有版本卸载,再

    2022年10月16日
    3
  • CSS之after clear「建议收藏」

    CSS之after clear「建议收藏」clear属性只会影响使用它的元素,具体可以看我的这篇文章:http://blog.csdn.net/liujan511536/article/details/50086275当我们给一个元素加上:after时,就是在这个元素内容的后面加上新的内容,如: #demo:after { content:”–good” } helloworld

    2025年9月3日
    8
  • pycharm该不该用汉化_pycharm语言怎么改成中文

    pycharm该不该用汉化_pycharm语言怎么改成中文原文:PyCharm设置中文(无需汉化包)(转载)如果侵权请联系我删除

    2025年6月14日
    4
  • Git远程仓库(2)

    Git远程仓库(2)

    2021年5月23日
    124
  • 打印星型图「建议收藏」

    打印星型图「建议收藏」打印星型图

    2022年4月24日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号