一、主鍵詳解,引用自:
1、要設定主鍵自增的話字段必須是整形數字。
二、外來鍵詳解:引用自
三、mysql列屬性。(主鍵,唯一鍵,自增等)引用自:
1、列屬性有很多,大致如下:
null / not null
default
primary key
unique key
auto_increment
comment
2、空屬性
3、列描述
comment:描述,沒有實際含義,為列增加文字說明,會隨著表建立一起儲存起來。
4、預設值
create table my_default(name varchar(20) not null unique key,gender varchar(4) default '男')charset utf8;
當不對gender列進行插入的時候,gender將會使用預設值。
5、主鍵,給表增加主鍵,大體分為三種
a、建立表的時候在字段後面使用primary key關鍵字
create table my_default(id int primary key,name varchar(20) not null unique key,gender varchar(4) default '男')charset utf8;
b、在建立表的時候,在所有的字段之後使用primary key(主鍵的字段 列表)來建立主鍵(如果有多個字段作為主鍵,稱之為復合主鍵)
create table my_pri(numbere char(10),
course char(10),
score tinyint,
primary key(number,course)
)charset utf8;
c、建立表之後,為表追加主鍵。有兩種方式,第一為修改表字段屬性,第二直接追加。
方式一:
alter table my_pri modify number char(11) primary key;
方式二:
alter table table_name add primary key(column);
--alter table my_pri add primary key(number,course);--增加復合主鍵
--alter table my_pri add constraint pk_score primary key(score)--使用關鍵字constraint 且指定主鍵名字pk_score
--alter table my_pri add constraint primary key(score)--使用關鍵字constraint 且使用預設名字
d、刪除主鍵:
alter table my_pri drop primary key;
6、自增
create table my_auto(id int primary key auto_increment,name varchar(20))charset utf8;
刪除自增:需要注意的是,如果自增長對應的字段為主鍵,那麼修改列屬性的時候,不要再加primary key;會被系統認為又定義乙個主鍵,會報錯。
alter table my_auto modify id int primary key; (錯誤)
alter table my_auto modify id int;(正確)
7、唯一鍵
a、建立表時新增唯一鍵:
方法一:
create table my_unique(name varchar(4) unique key,number varchar(20) unique key)charset utf8;
方法二、create table my_unique(name varchar(4),
number varchar(20),
unique key name(name),
unique key(number)
)charset utf8;
b、建立表後增加唯一鍵:
create table my_unique(name varchar(4),number varchar(20))charset utf8;
方法一:
alter table my_unique modify column name varchar(5) unique key;
方法二:
alter table my_unique add constraint num_uk unique key(number);
c、刪除唯一約束
alter table my_unique drop index num_uk;
mysql 主鍵 外來鍵
1 候選鍵 關係中的乙個屬性組,其值能唯一標識乙個元組,若從該屬性組中去掉任何乙個屬性,它就不具有這一性質了,這樣的屬性組稱作候選碼。比如人的自然屬性 身高,體重,年齡,指紋樣式.2 主鍵 當有多個候選碼時,可以選定乙個作為主碼,選定的候選碼稱主鍵。主鍵是能確定一條記錄的唯一標識 比如上面例子中的指...
mysql主鍵 外來鍵
主鍵是能確定一條記錄的唯一標識,主鍵字段必須唯一,必須非空,乙個表中只能有乙個主鍵,主鍵可以包含乙個或多個字段。打個比方,一條記錄包括身份正號,姓名,年齡,學校,國籍,性別等。身份證號是唯一能確定你這個人的,其他都可能有重複,所以,身份證號是主鍵。外來鍵表示了兩個關係之間的相關聯絡。以另乙個關係的外...
mysql的主鍵 外來鍵約束 MySQL 主鍵外來鍵
笛卡兒積 多表查詢 多個表變成乙個表 完整性約束條件 primary key 標識該屬性為該錶的主鍵,可以唯一的標識對應的元組 foreign key 標識該屬性為該錶的外來鍵,是與之聯絡的某錶的主鍵 not null 標識該屬性不能為空 unique 標識該屬性的值是唯一的 auto increm...