十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、首先打开Navicate,连接到数据库,打开表设计页面。
成都创新互联是专业的四川网站建设公司,四川接单;提供成都网站建设、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行四川网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
2、然后点击切换到索引,打开索引界面。
3、设置索引名,按下选择栏,打开栏位页面这里显示的是表的字段,选择要设置唯一索引的字段。
4、然后按下索引类型的下拉按钮,选择unique就是唯一索引的意思。
5、最后按下索引方式选择btree,按下快捷键Crtl+S保存就完成唯一索引设置了。
主键:是唯一标示当前表里的那一列,用主键可以代替表里一条实体的内容,
如:你有一个名字,有你的住址,电话号码,籍贯,学位,政治面貌,等属性,
但唯一能够标示你的还是你的身份证号,因为别人有可能有跟你同样的名字,或者同样的住址,或者同样的的学位。。但身份证是唯一的。通过身份证,我完全知道你本人。
索引:就相当于你买了一部字典的目录,通过目录,可以找到你需要查找的内容。索引不是自动有的,在数据库中,必须根据表里的字段建立索引。
唯一:也是一种约束,将字段设置唯一约束后,该字段在表里的所有“记录”将是不同的,比如将学号设置为唯一,第一个学生,学号 00001;那么第二个学生 学号 可以是 00002或者00003 而不能设置为 00001,如果,设置为00001的话,数据库将报:字段违反唯一约束,这样做的目的是为了每个学生有不同的学号。
你用那个图形界面的软件,来加就可以了,应该在索引那一栏里面,自己写语句修改表,弄不好会出错的,还麻烦。
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`)
) ENGINE=InnoDB AUTO_INCREMENT=1018 DEFAULT CHARSET=gbk;
2.给已经建好的表加上唯一性约束
ALTER TABLE `t_user` ADD unique(`username`);
我机器上没有数据库,没验证这2个sql,不晓得行不行,大概是这样的吧。
有些人用程序来给数据做约束的,比如约束用户名,
DataSet ds = dao.queryForDataSet(connName,"select * from t_user where username=? and password=?",new Object[]{username,password},0,0,false);
if(ds.size()==1){
//登陆成功
}else if(ds.size()1){
//冻结此账户,记录错误日志
}else{
//告知用户账号不存在或者密码错误
}
插入用户之前事先查询一下这个用户是否存在,可以用ajax做验证账号是否重复的效果,很多网站都是这么干的