主碼完整性約束的設置有兩種方法:
創(chuàng)新互聯(lián)公司主要從事網(wǎng)站建設、做網(wǎng)站、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務淮安區(qū),十余年網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108
1.在定義數(shù)據(jù)項的時候就聲明它為主碼
2.在表創(chuàng)建完成之后增加完整性約束
對應于1,撤銷完整性約束
alter table employee
drop primary key;
對應于2.
alter table emloyee
drop constraint PK_eno;
PK_eno 為當初創(chuàng)建完整性約束時為該約束性定義的名字
mysql下,每個表只能有一個主鍵。
但這個主鍵可以由一個屬性或多個屬性組合構成。多個屬性作位主鍵的話,則這個主鍵可以稱為“復合主鍵”。
復合主鍵的示例(以id列和name列合并構成主鍵):
create table tb_name
(id int,
name varchar(20),
constraint pk_name primary key (id,name)
)
你使用SQL語句修改呢,還是使用PHPMYADMIN?
在PHPMYADMIN里面非常簡單,打開相應的表,修改字段屬性,設置為主鍵既可。如果主鍵是幾個字段的聯(lián)合,那么就選擇新建立索引,索引類型是PREMARYKEY既可。
如果是用SQL語句,那么可以使用下面的SQL語句:
ALERTTABLEtab_nameADDPRIMARYKEY(index_col_name,...);
alter table 表名 change 字段名 新字段名 新字段類型 auto_increment;
例子:
alter table student change sno sno int auto_increment;
字段名不變,則新字段名不變,但不可省,新字段類型也是
使用這個命令,要保證字段是主鍵,只有主鍵才可設置自動增長屬性
1. 查看MySQL數(shù)據(jù)庫的默認編碼
有如下兩種方式,
(1)使用status命令
mysql status;
圖1 status命令
(2)使用show variables命令
mysql show variables like 'char%';
圖2 show variables命令
如果要查看某個數(shù)據(jù)庫的編碼,在運行上面的命令前,應先執(zhí)行use db_name;命令切換數(shù)據(jù)庫(db_name為要查看的數(shù)據(jù)庫名)。
2. 改變MySQL數(shù)據(jù)庫的默認編碼
安裝MySQL數(shù)據(jù)庫時的默認編碼是latin1,實際使用時可能要使用其他編碼。下文描述如何將默認編碼改為utf8:
首先修改MySQL的配置文件/etc/mysql/my.cnf:
在[client]下追加:
default-character-set=utf8
在[mysqld]下追加:
character-set-server=utf8
在[mysql]下追加:
default-character-set=utf8
修改完畢后,使用如下命令之一重啟mysql服務:
service mysql restart
/etc/init.d/mysql restart
改變后,之前手工創(chuàng)建的數(shù)據(jù)庫如未顯式指定編碼,則其編碼仍是默認的latin1,可使用如下命令更改編碼:
mysql alter database db_name CHARACTER SET utf8;
參考資料:
[1]
mysql如何更改數(shù)據(jù)庫字符編碼?借助客戶端工具很容易就可以更改了,下面來看一下。
打開navicat客戶端工具,在左邊找到要更改的數(shù)據(jù)庫。
右鍵點擊這個數(shù)據(jù)庫,在菜單上點擊數(shù)據(jù)庫屬性選項。
在彈出的屬性窗口上,點擊默認字符集下的下拉框。
在彈出的下拉選項里,點擊選中要使用的字符集就行了,比如選擇常用的utf8字符集,點擊ok按鈕就行了。