- 相關(guān)推薦
計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)
數(shù)據(jù)庫(kù)的考核內(nèi)容為:計(jì)算機(jī)基礎(chǔ)知識(shí)、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)、數(shù)據(jù)庫(kù)原理、數(shù)據(jù)庫(kù)的應(yīng)用及開(kāi)發(fā)。小編整理了相關(guān)的內(nèi)容,歡迎欣賞與借鑒。
一.數(shù)據(jù)庫(kù)中的范式:
范式, 英文名稱是 Normal Form,它是英國(guó)人 E.F.Codd(關(guān)系數(shù)據(jù)庫(kù)的老祖宗)在上個(gè)世紀(jì)70年代提出關(guān)系數(shù)據(jù)庫(kù)模型后總結(jié)出來(lái)的,范式是關(guān)系數(shù)據(jù)庫(kù)理論的基礎(chǔ),也是我們?cè)谠O(shè)計(jì)數(shù)據(jù)庫(kù)結(jié)構(gòu)過(guò)程中所要遵循的規(guī)則和指導(dǎo)方法,以下就是對(duì)這三個(gè)范式的基本介紹:
第一范式(1NF):
數(shù)據(jù)表中的每一列(字段),必須是不可拆分的最小單元,也就是確保每一列的原子性。
例如: userInfo: '山東省煙臺(tái)市 1318162008' 依照第一范式必須拆分成
userInfo: '山東省煙臺(tái)市' userTel: '1318162008'兩個(gè)字段
第二范式(2NF):
滿足1NF后要求表中的所有列,都必需依賴于主鍵,而不能有 任何一列與主鍵沒(méi)有關(guān)系(一個(gè)表只描述一件事情)。
例如:訂單表只能描述訂單相關(guān)的信息,所以所有的字段都必須與訂單ID相關(guān)。
產(chǎn)品表只能描述產(chǎn)品相關(guān)的信息,所以所有的字段都必須與產(chǎn)品ID相關(guān)。
因此在同一張表中不能同時(shí)出現(xiàn)訂單信息與產(chǎn)品信息。
第三范式(3NF):第三范式(3NF):滿足2NF后,要求:表中的每一列都要與主鍵直接相關(guān),而不是間接相關(guān)(表中的每一列只能依賴于主鍵)
例如:訂單表中需要有客戶相關(guān)信息,在分離出客戶表之后,訂單表中只需要有一個(gè)用戶
ID即可,而不能有其他的客戶信息,因?yàn)槠渌挠脩粜畔⑹侵苯雨P(guān)聯(lián)于用戶ID,而不是關(guān)聯(lián)
于訂單ID。
注意事項(xiàng):
1.第二范式與第三范式的本質(zhì)區(qū)別:在于有沒(méi)有分出兩張表。
第二范式是說(shuō)一張表中包含了多種不同實(shí)體的屬性,那么必須要分成多張表,第三范式是要求已經(jīng)分好了多張表的話,一張表中只能有另一張標(biāo)的ID,而不能有其他任何信息,(其他任何信息,一律用主鍵在另一張表中查詢)。
2.必須先滿足第一范式才能滿足第二范式,必須同時(shí)滿足第一第二范式才能滿足第三范式。
二:數(shù)據(jù)庫(kù)中的五大約束:
數(shù)據(jù)庫(kù)中的五大約束包括:
1.主鍵約束(Primay Key Coustraint) 唯一性,非空性;
2.唯一約束 (Unique Counstraint)唯一性,可以空,但只能有一個(gè);
3.默認(rèn)約束 (Default Counstraint) 該數(shù)據(jù)的默認(rèn)值;
4.外鍵約束 (Foreign Key Counstraint) 需要建立兩表間的關(guān)系;
5.非空約束( Not Null Counstraint ):設(shè)置非空約束,該字段不能為空。
詳細(xì)介紹:
(1)[外鍵約束 (Foreign Key Counstraint) ]
1.設(shè)置外鍵的注意事項(xiàng):
、伲褐挥蠭NNODB的數(shù)據(jù)庫(kù)引擎支持外鍵,修改my.ini文件設(shè)置default-storage-engine=INNODB;
②:外鍵與參照列的數(shù)據(jù)類型必須相同。(數(shù)值型要求長(zhǎng)度和無(wú)符號(hào)都相同,字符串要求類型相同,長(zhǎng)度可以不同);
③:設(shè)置外鍵的字段必須要有索引,如果沒(méi)有索引,設(shè)置外鍵時(shí)會(huì)自動(dòng)生成一個(gè)索引;
2.設(shè)置外鍵的語(yǔ)法:
[CONSTRAINT 外鍵名] FOREIGN KEY(外鍵字段) REFERENCES 參照表(參照字段);
[ON DELETE SET NULL ON UPDATE CASCADE] -- 設(shè)置操作完整。
3、外鍵約束的參照操作:
當(dāng)對(duì)參照表的參照字段進(jìn)行刪除或更新時(shí),外鍵表中的外鍵如何應(yīng)對(duì)。
參照操作可選值:
RESTRICT: 拒絕對(duì)參照字段的刪除或修改(默認(rèn));
NO ACTION:與RESTRICT相同,但這個(gè)指令只在MySql生效;
CASCADE: 刪除或更新參照表的參照字段時(shí),外鍵表的記錄同步刪除或更新;
SET NULL: 刪除刪除或更新參照表的參照字段時(shí),外鍵表的外鍵設(shè)為NULL (此時(shí)外鍵不能設(shè)置為NOT NULL)。
。2)[主鍵約束] (Primay Key Coustraint)
1.主鍵的注意事項(xiàng):主鍵默認(rèn)非空,默認(rèn)唯一性約束,只有主鍵可以設(shè)置自動(dòng)增長(zhǎng)(主鍵不一定自增,自增一定是主鍵)。
2.設(shè)置主鍵的方式:
、伲涸诙x列時(shí)設(shè)置:id INT UNSIGNED PRIMARY KEY。
、冢涸诹卸x完成后設(shè)置:PRIMARY KEY(id)。
【計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)】相關(guān)文章:
計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)題庫(kù)201608-25
計(jì)算機(jī)三級(jí)的數(shù)據(jù)庫(kù)上機(jī)試題及答案10-01
計(jì)算機(jī)三級(jí)MySQL數(shù)據(jù)庫(kù)模擬試題10-23
計(jì)算機(jī)三級(jí)MySQL數(shù)據(jù)庫(kù)試題及答案10-23
2024計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)試題10-24
計(jì)算機(jī)三級(jí)網(wǎng)絡(luò)技術(shù)基礎(chǔ)知識(shí)09-27
計(jì)算機(jī)三級(jí)網(wǎng)絡(luò)技術(shù)計(jì)算機(jī)基礎(chǔ)知識(shí)10-08
2017計(jì)算機(jī)三級(jí)數(shù)據(jù)庫(kù)技術(shù)題庫(kù)06-16