欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報邀請碼778899分享:數(shù)據(jù)庫 【MYSQL】表的設計

柚子快報邀請碼778899分享:數(shù)據(jù)庫 【MYSQL】表的設計

http://yzkb.51969.com/

目錄

數(shù)據(jù)庫約束not null 約束unique (唯一)約束default 默認值約束primary key (主鍵)約束foreign key (外鍵)約束check 約束總結

表的設計三大范式第一范式第二范式第三范式

表的關系

</p><p>

數(shù)據(jù)庫約束

是關系型數(shù)據(jù)庫的一個重要功能,主要作用是保證數(shù)據(jù)的完整性,也可能理解數(shù)據(jù)的正確性(數(shù)據(jù)本身是否正確,關聯(lián)關系是否正確),人工檢查數(shù)據(jù)完整性的工作量非常的大,在數(shù)據(jù)表中定義一些約束,那么數(shù)據(jù)庫寫入數(shù)據(jù)的時候,數(shù)據(jù)庫會幫我們做校驗工作,約束一般是指定在列上的,使用在表的定義時在要約束的列的類型后加上。

not null 約束

表示該列不能存儲null值。

如果存入null會報錯。

</p><p>

unique (唯一)約束

表示該列中的數(shù)據(jù)不能重復(null)除外。

插入相同或者已有的值會報錯。

</p><p>

default 默認值約束

指定列為空時的默認值。 </p><p>

primary key (主鍵)約束

相當于是not null 和 unique的結合,

表示該列中的數(shù)據(jù)既不能重復也不能為空。

如果存入null會報錯。插入相同或者已有的值也會報錯。

當主鍵是整型時,我們常常加上auto_increment讓主鍵從當前最大值加1,

但是當插入錯誤時該值相當于被生成了,下一個從這個開始。

通俗將就是當前主鍵最大值為7,然后插入時報錯了,改回來后插入行主鍵為9。

</p><p>

一張表中最多只能定義一個主鍵,定義超了就會報錯,

要想多列為主鍵只能使用復合主鍵primary key (列名1, 列名2)。

使用復合主鍵,必須列值都相同才算重復,任一列值都不能為null。

</p><p>

foreign key (外鍵)約束

保證一個表中的數(shù)據(jù)匹配另一個表中的值的參照完整性。

就是將另一個表中的值作為該表中該列的范圍。

被外鍵約束的列在約束前先定義,

語法是foreign key (列名) references 外表名(外列名),

被外鍵約束的表還存在就不能刪除外表。

</p><p>

check 約束

該約束在5.7版本不能使用,導致兼容性不好,所以一般不用。

使用了該約束后該列只能插入被約束的值。

</p><p>

總結

約束類型說明示例not null 約束使用not null指定列不能為空name varchar(20) not null,unique 約束指定列為唯一的、不重復的,null除外name varchar(20) unique,default 默認值約束指定列為空時的默認值age int default 20,primary key 主鍵約束not null 和 unique 的結合id int primary key,foreign key外鍵約束關聯(lián)其他表的主鍵或唯一鍵foreign key (字段名) references 主表(列)check約束保證列中的值符合指定的條件check (gender = ‘男’ or gender =‘女’)

表的設計

一般我們編程流程如下:

OOA面向對象分析 -》OOD面向對象設計 -》OOP面向對象編程

設計表:

從需求中獲得類,類對應到數(shù)據(jù)庫中的實體,實體在數(shù)據(jù)庫中就表現(xiàn)為一張一張的表,類中的屬性就對應著表中的字段(列),確定類與類之間的關系,使用SQL去創(chuàng)建具體的表。

三大范式

設計表的時候我們一般要遵循一些規(guī)則,這些規(guī)則我們一般稱之為三大范式。 范式就是描述數(shù)據(jù)關系的模型,下面只介紹三大范式。

第一范式

第一范式就是表中的字段不可再拆分。

第一范式是關系型數(shù)據(jù)庫最基本的要求,不滿足第一范式的數(shù)據(jù)庫不是關系型數(shù)據(jù)庫。 也就是在定義表時每個字段都可以用一種數(shù)據(jù)類型來表示,那么這個表就是滿足第一范式的。

第二范式

在滿足第一范式的基礎上,不存在非關鍵字段對任意候選字段存在部分函數(shù)依賴(存在于復合主鍵的情況下)

非關鍵字段即非主鍵字段,候選字段可以理解為主鍵或者沒有主鍵時的唯一鍵。

對于由兩個或多個關鍵字段(復合主鍵)決定一條記錄的情況,如果一行數(shù)據(jù)中有些字段只與關鍵字段中的一個有關系,那么這種就說他只存在部分函數(shù)依賴。

表中沒有復合主鍵的表天然滿足第二范式。

第三范式

在第二范式的基礎上,不存在非關鍵字段,對任一候選鍵的傳遞依賴。

兩個強相關關系存在傳遞現(xiàn)象,這種傳遞關系稱為傳遞依賴。比如學生表中拿到學號,可以根據(jù)學號拿到學校,根據(jù)學校又可以拿到學院等信息。

表的關系

一對一: 比如一個人只有一個身份證一樣。一對多: 比如一個班級擁有多個學生一樣。多對多: 比如一個學生選多個課程,一個課程被多個學生選一樣。

柚子快報邀請碼778899分享:數(shù)據(jù)庫 【MYSQL】表的設計

http://yzkb.51969.com/

文章來源

評論可見,查看隱藏內容

本文內容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉載請注明,如有侵權,聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/19351473.html

發(fā)布評論

您暫未設置收款碼

請在主題配置——文章設置里上傳

掃描二維碼手機訪問

文章目錄