你用那個圖形界面的軟件,來加就可以了,應(yīng)該在索引那一欄里面,自己寫語句修改表,弄不好會出錯的,還麻煩。
公司專注于為企業(yè)提供網(wǎng)站設(shè)計、網(wǎng)站制作、微信公眾號開發(fā)、成都商城網(wǎng)站開發(fā),微信小程序開發(fā),軟件按需策劃設(shè)計等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。憑借多年豐富的經(jīng)驗,我們會仔細了解各客戶的需求而做出多方面的分析、設(shè)計、整合,為客戶設(shè)計出具風格及創(chuàng)意性的商業(yè)解決方案,創(chuàng)新互聯(lián)公司更提供一系列網(wǎng)站制作和網(wǎng)站推廣的服務(wù)。
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.給已經(jīng)建好的表加上唯一性約束
ALTER TABLE `t_user` ADD unique(`username`);
我機器上沒有數(shù)據(jù)庫,沒驗證這2個sql,不曉得行不行,大概是這樣的吧。
有些人用程序來給數(shù)據(jù)做約束的,比如約束用戶名,
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){
//凍結(jié)此賬戶,記錄錯誤日志
}else{
//告知用戶賬號不存在或者密碼錯誤
}
插入用戶之前事先查詢一下這個用戶是否存在,可以用ajax做驗證賬號是否重復的效果,很多網(wǎng)站都是這么干的
可以在建表時這樣寫:
create
table
persons
(
id_p
int
not
null,
lastname
varchar(255)
not
null,
firstname
varchar(255),
address
varchar(255),
city
varchar(255),
check
(id_p0)
)
如果是多列需要check約束的話,可是這樣寫:
create
table
persons
(
id_p
int
not
null,
lastname
varchar(255)
not
null,
firstname
varchar(255),
address
varchar(255),
city
varchar(255),
constraint
chk_person
check
(id_p0
and
city='sandnes')
)
如果已經(jīng)存在表persons,再需要添加check約束的話,可以這樣寫:
alter
table
persons
add
check
(id_p0)
如果是多列需要check約束的話,可是這樣寫:
alter
table
persons
add
constraint
chk_person
check
(id_p0
and
city='sandnes')
建表時加上唯一性約束:
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;
MySQL是一個關(guān)系型數(shù)據(jù)庫管理系統(tǒng),關(guān)系數(shù)據(jù)庫將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個大倉庫內(nèi),這樣就增加了速度并提高了靈活性。
MySQL所使用的 SQL 語言是用于訪問數(shù)據(jù)庫的最常用標準化語言。MySQL 軟件采用了雙授權(quán)政策,分為社區(qū)版和商業(yè)版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網(wǎng)站的開發(fā)都選擇 MySQL 作為網(wǎng)站數(shù)據(jù)庫。
擴展資料:
MySQL 作為數(shù)據(jù)庫,系統(tǒng)特性:
1、使用 C和?C++編寫,并使用了多種編譯器進行測試,保證了源代碼的可移植性。
2、支持?AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系統(tǒng)。
3、為多種編程語言提供了?API。這些編程語言包括?C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。
4、優(yōu)化的?SQL查詢算法,有效地提高查詢速度。
5、提供多語言支持,常見的編碼如中文的?GB 2312、BIG5,日文的?Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。提供?TCP/IP、ODBC 和?JDBC等多種數(shù)據(jù)庫連接途徑。
6、支持大型的數(shù)據(jù)庫??梢蕴幚頁碛猩锨f條記錄的大型數(shù)據(jù)庫。支持多種存儲引擎。
參考資料:百度百科-mySQL
Mysql設(shè)置某字段唯一
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.給已經(jīng)建好的表加上唯一性約束
ALTER TABLE `t_user` ADD unique(`username`);
mysql主鍵索引和唯一索引
1.主鍵一定是唯一性索引,唯一性索引并不一定就是主鍵;
2.一個表中可以有多個唯一性索引,但只能有一個主鍵;
3.主鍵列不允許空值,而唯一性索引列允許空值。
采納噢
網(wǎng)站題目:mysql唯一約束怎么弄 mysql唯一約束怎么設(shè)置
文章源于:http://chinadenli.net/article30/dogedpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、電子商務(wù)、商城網(wǎng)站、云服務(wù)器、App設(shè)計、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)