unique约束是唯一性约束,对于需要列类型应用程序会重复出现分歧值。您可以加入一个单独的列unique约束。能够加入多个列unique约束()。假设为多个列加入一个unique约束,仅仅须要保证这多个列的值不会所有同样就可以。

     在创建表时,为列加入unique约束。形式例如以下:

column_name data_type [constraint constraint_name] unique或

create table table_name(

column_name data_type,[,...]

[constraint constraint_name] unique(column_name)

[,...]

)

也能够为已经创建的表中的列提娜姬unique约束,这时就须要使用alter talbe ..add语句。形式例如以下:

alter table table_name add [constraint constraint_name] unique(column_name);





      删除unique约束

删除列上的unique约束,能够使用alter table...drop语句,形式例如以下:

alter table table_name drop unique(column_name)

假设约束有名称。也能够使用指定名称的方式删除该约束,语句形式例如以下:

alter table table drop constraint constraint_name;





详细的操作例如以下:

SQL> create table person

  2  (pid number(4) not null unique,

  3  pname varchar2(10) unique,

  4  sex char(2)

  5  );

表已创建。

上面创建一张person表,为pid和pname都指定唯一约束

SQL> insert into person values(1,'aaa','女');

已创建 1 行。

SQL> insert into person values(2,'aaa','女');

insert into person values(2,'aaa','女')

*

第 1 行出现错误:

ORA-00001: 违反唯一约束条件 (SYSTEM.SYS_C0010079)

SQL> insert into person values(2,'abcd','女');

已创建 1 行。

如上面所看到的,当加入的名字同样时报错。

SQL> insert into person values(2,'abcd','女');

已创建 1 行

改动下pname。此时就没报错。





再创建还有一张表。





SQL> create table p2(

  2  pid number(4),

  3  pname varchar2(10),

  4  psex char(2),

  5  constraint p2_unique unique(pid,pname)

  6  );

表已创建。

SQL> alter table p2 add constraint unique_p2sex unique(psex);  --为psex加入unique

表已更改。

SQL> alter table p2 drop unique (psex);                        --删除unique唯一约束

表已更改。

SQL> alter table p2 drop constraint p2_unique;

表改变。

SQL>

版权声明:本文博客原创文章,博客,未经同意,不得转载。

最新文章

  1. Html --用简单的<hr>实现多样化分割效果
  2. 解决linux系统启动之:unexpected inconsistency:RUN fsck
  3. 数组操作splice
  4. Win10开机提示Resume from Hibernation该怎么办?
  5. 扯扯Java中Finalization的意义
  6. .net学习笔记----Asp.net的生命周期之一应用程序生命周期
  7. BZOJ 1036 [ZJOI2008]树的统计Count (树链剖分 - 点权剖分 - 单点权修改)
  8. Python Django manage.py提供的命令及用法
  9. 神经网络中误差反向传播(back propagation)算法的工作原理
  10. 25、Javascript 事件
  11. Unity3D开发一个2D横版射击游戏
  12. Android-Launcher开发之ShortCut(1)
  13. docker数据库
  14. 《团队-手机app便签-开发文档》
  15. git status 显示中文乱码
  16. python中 ImportError: No module XXX的解决办法
  17. 针对django2.2报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xa6 in position 9737: ill....
  18. 揭开Future的神秘面纱——任务取消
  19. phpstorm + x-debug 进行php调试
  20. matlab彩色图像插值

热门文章

  1. ym——Android开发编码规范(自用)
  2. [Unity3D]Unity3D游戏开发之ACT游戏三连击效果实现综述
  3. [Linux]Centos git报错fatal: HTTP request failed
  4. Android入门之简单短信发送器
  5. 在Laravel中一步一步创建Packages
  6. 获取Enum枚举值描述的几法方法
  7. spring web.xml配置服务启动后执行文件
  8. Python的控制结构(转)
  9. CI控制器调用内部方法并加载对应模板的做法
  10. GString及IntelliJIdea中调试Groovy的操作步骤