数据库字段唯一性约束设置(总结一)

突然看到数据库表设计中的几个属性,记录一下

restrict--限制,指的是如果字表引用父表的某个字段的值,那么不允许直接删除父表的该值;
cascade--级联,删除父表的某条记录,子表中引用该值的记录会自动被删除;
no action--无参照完整性关系,有了也不生效。

 

在就是想到字段唯一性约束的添加

 

 

Mysql设置某字段唯一
 
1.建表时加上唯一性约束
 
CREATE TABLE `t_user` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(18) NOT NULL unique,
`password` varchar(18) NOT NULL,
PRIMARY KEY (`Id`)  www.2cto.com  
) ENGINE=InnoDB AUTO_INCREMENT=1018 DEFAULT CHARSET=gbk;
 
2.给已经建好的表加上唯一性约束
ALTER TABLE `t_user` ADD unique(`username`);
 
mysql主键索引和唯一索引
 
1.主键一定是唯一性索引,唯一性索引并不一定就是主键;
2.一个表中可以有多个唯一性索引,但只能有一个主键;
3.主键列不允许空值,而唯一性索引列允许空值。
 

在PowerDesigner中设置字段唯一约束 --相当于unique

1.双击Table,弹出Table Properties窗口
2.添加一个新的索引
3.选择unique,把索引设置为唯一索引
4.双击索引所在的行,弹出索引属性窗口(Index Properties)
5.双击添加列按钮,弹出Selection窗口
6.选择索引包含的表的列,并单击OK
 

你可能感兴趣的:(数据库)