數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版)PPT全套完整教學(xué)課件_第1頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版)PPT全套完整教學(xué)課件_第2頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版)PPT全套完整教學(xué)課件_第3頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版)PPT全套完整教學(xué)課件_第4頁(yè)
數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版)PPT全套完整教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩532頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

數(shù)據(jù)庫(kù)原理及應(yīng)用(MySQL版在線實(shí)訓(xùn)版)第0章緒論.ppt 第1章數(shù)據(jù)庫(kù)基礎(chǔ).pptx 第2章關(guān)系數(shù)據(jù)庫(kù)理論.ppt 第3章搭建數(shù)據(jù)庫(kù)實(shí)驗(yàn)環(huán)境.ppt 第4章數(shù)據(jù)庫(kù)及表基本操作.ppt 第5講單表查詢.ppt 第6講多表查詢.ppt 第7章索引與視圖.pptx 第8章數(shù)據(jù)庫(kù)編程.ppt 第9講數(shù)據(jù)庫(kù)設(shè)計(jì).ppt 第10講范式及反范式設(shè)計(jì).ppt 第11章事務(wù)及其并發(fā)控制.ppt 第12章數(shù)據(jù)庫(kù)安全.ppt 第13章數(shù)據(jù)庫(kù)管理及優(yōu)化技術(shù).ppt 第14章數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)技術(shù).ppt 《數(shù)據(jù)庫(kù)原理及應(yīng)用》數(shù)據(jù)庫(kù)虛擬教研室制作數(shù)據(jù)庫(kù)目錄緒論03該課程的教學(xué)方法01為什么要學(xué)習(xí)數(shù)據(jù)庫(kù)02該課程的學(xué)習(xí)內(nèi)容05該課程學(xué)習(xí)資源04該課程教學(xué)目標(biāo)為什么要學(xué)習(xí)數(shù)據(jù)庫(kù)?數(shù)據(jù)庫(kù)不僅是計(jì)算機(jī)、軟件工程等專業(yè)的核心課程,而且也是非計(jì)算機(jī)專業(yè)學(xué)生必修的信息技術(shù)課程。當(dāng)前人工智能、互聯(lián)網(wǎng)+、大數(shù)據(jù)、云計(jì)算等技術(shù)應(yīng)用都建立在數(shù)據(jù)庫(kù)之上,數(shù)據(jù)庫(kù)技術(shù)已成為各種計(jì)算系統(tǒng)的核心技術(shù),數(shù)據(jù)庫(kù)課程已成為計(jì)算機(jī)及其相關(guān)專業(yè)必修課程。我們每天都在不知不覺(jué)中和數(shù)據(jù)庫(kù)打交道,請(qǐng)談?wù)勀忝刻於加玫侥男?shù)據(jù)庫(kù)系統(tǒng)?該課程的學(xué)習(xí)內(nèi)容?該課程的教學(xué)方法?

(線上線下)混合式教學(xué)分組合作討論交流檢查驗(yàn)收作業(yè)30%實(shí)驗(yàn)30%課堂互動(dòng)10%出勤5%線上資源10%章節(jié)測(cè)試10%討論5%=平時(shí)成績(jī)(50%)重點(diǎn)內(nèi)容講解+線上自主學(xué)習(xí)考核該課程的學(xué)習(xí)目標(biāo)?素養(yǎng)目標(biāo)培養(yǎng)學(xué)生計(jì)算思維能力和分析解決問(wèn)題的能力;培養(yǎng)學(xué)生數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)能力;能力目標(biāo)知識(shí)目標(biāo)掌握數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ)知識(shí),掌握數(shù)據(jù)庫(kù)技術(shù)的應(yīng)用方法,掌握數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)工具的使用;培養(yǎng)學(xué)生的自主學(xué)習(xí)能力、團(tuán)隊(duì)合作精神、規(guī)范化編程、家國(guó)情懷。該課程的MOOC學(xué)習(xí)資源?《數(shù)據(jù)庫(kù)系統(tǒng)》哈爾濱工業(yè)大學(xué)戰(zhàn)德臣教授/(國(guó)家高等教育智慧教育平臺(tái))《數(shù)據(jù)庫(kù)系統(tǒng)概論》中國(guó)人民大學(xué)王珊教授/(國(guó)家高等教育智慧教育平臺(tái))《數(shù)據(jù)庫(kù)原理及應(yīng)用》安徽工業(yè)大學(xué)陳業(yè)斌教授/detail/232603658(學(xué)銀在線)/

(國(guó)家高等教育智慧教育平臺(tái))該課程的網(wǎng)絡(luò)學(xué)習(xí)資源?Bilibili——嗶哩嗶哩/video/BV1QE411u7Mh/?spm_id_from=333.337.search-card.all.click中國(guó)專業(yè)IT社區(qū)CSDN(ChineseSoftwareDeveloperNetwork)/ThankYou!ThankYou!謝謝學(xué)習(xí)數(shù)據(jù)庫(kù)虛擬教研室制作數(shù)據(jù)庫(kù)《數(shù)據(jù)庫(kù)原理及應(yīng)用》03

數(shù)據(jù)庫(kù)系統(tǒng)01

數(shù)據(jù)與信息02數(shù)據(jù)模型目錄第1章數(shù)據(jù)庫(kù)基礎(chǔ)什么是數(shù)據(jù)

數(shù)量描述:0、1、100、3.14事物描述文字陳述:我是一個(gè)學(xué)生

圖形圖象:

……

數(shù)據(jù):用文字、數(shù)字、圖象等各種符號(hào)對(duì)客觀事實(shí)的表達(dá)。數(shù)據(jù)是計(jì)算機(jī)實(shí)際能處理的一切對(duì)象,只是它們有外部可視形式和內(nèi)部處理形式的區(qū)別而已。什么是信息請(qǐng)說(shuō)出如下數(shù)據(jù)的含義:

白云、20、計(jì)算機(jī)、199001

姓名、年齡、專業(yè)、出生年月

信息:把對(duì)數(shù)據(jù)進(jìn)行加工得到的影響或可能影響用戶決策的有關(guān)知識(shí)稱之為信息。就是人們對(duì)數(shù)據(jù)賦予的一種意義、一種解釋。數(shù)據(jù)與信息的關(guān)系數(shù)據(jù)與信息有區(qū)別也有聯(lián)系。信息與數(shù)據(jù)之間的固有聯(lián)系:數(shù)據(jù)是信息的符號(hào)表示或稱為載體,信息則是數(shù)據(jù)的內(nèi)涵,是對(duì)數(shù)據(jù)的語(yǔ)義解釋。信息依賴于數(shù)據(jù)的表示,同一信息用不同的數(shù)據(jù)形式來(lái)表示。如:1999年,一九九九年數(shù)據(jù)處理

數(shù)據(jù)處理:對(duì)信息進(jìn)行收集、整理、加工、存儲(chǔ)、檢索、傳遞和輸出、利用等一系列活動(dòng)的總和。信息是用數(shù)據(jù)表示的,故對(duì)信息的處理又具體地表現(xiàn)在對(duì)數(shù)據(jù)的處理上。數(shù)據(jù)處理也稱信息處理。例如:(1)根據(jù)出生年月就能計(jì)算出某人的年齡;(2)根據(jù)某人的網(wǎng)上購(gòu)物記錄自動(dòng)推送你感興趣的商品;(3)根據(jù)商品前兩個(gè)季度的銷售數(shù)據(jù)推算后兩個(gè)季度的銷售情況。如何存儲(chǔ)數(shù)據(jù)

計(jì)算機(jī)無(wú)法直接處理現(xiàn)實(shí)事物需要將現(xiàn)實(shí)事物轉(zhuǎn)化為計(jì)算機(jī)可以理解的數(shù)據(jù),以方便計(jì)算機(jī)進(jìn)行存儲(chǔ)和處理現(xiàn)實(shí)世界:事物及其聯(lián)系信息世界:概念模型計(jì)算機(jī)世界DBMS支持的數(shù)據(jù)模型認(rèn)識(shí)抽象收集、分類、抽象轉(zhuǎn)換數(shù)據(jù)模型定義

模型:是用來(lái)描述數(shù)據(jù),數(shù)據(jù)關(guān)系,數(shù)據(jù)語(yǔ)義,數(shù)據(jù)約束的工具。數(shù)據(jù)模型:用數(shù)學(xué)的方法(或計(jì)算機(jī)可實(shí)現(xiàn)的方法)對(duì)現(xiàn)實(shí)世界中的事物及其聯(lián)系的描述。數(shù)據(jù)模型的作用:

用來(lái)抽象、表示和處理現(xiàn)實(shí)世界中數(shù)據(jù)和信息的工具是對(duì)現(xiàn)實(shí)世界的模擬和抽象數(shù)據(jù)模型三要素?cái)?shù)據(jù)模型:是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束三個(gè)部分組成。數(shù)據(jù)結(jié)構(gòu):是指數(shù)據(jù)在數(shù)據(jù)庫(kù)中的存在方式數(shù)據(jù)操作:是指對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行增、刪、改、查操作的方式完整性約束:是指保證數(shù)據(jù)在操作過(guò)程中的正確性和一致性的規(guī)則典型的數(shù)據(jù)模型關(guān)系模型層次模型網(wǎng)狀模型NOSQL對(duì)象關(guān)系XML……

第一代第二代第三代關(guān)系數(shù)據(jù)模型關(guān)系模型:以二維表來(lái)描述數(shù)據(jù)?!瓕W(xué)號(hào)姓名出生年月性別系年級(jí)970501張平198005女計(jì)算機(jī)3970502王鷹198103男計(jì)算機(jī)3970601周麗198205女機(jī)械3980209李強(qiáng)198011男化工2關(guān)系數(shù)據(jù)模型數(shù)據(jù)結(jié)構(gòu)--關(guān)系模式學(xué)號(hào)姓名出生年月性別系年級(jí)學(xué)號(hào)姓名出生年月性別系年級(jí)970501張平198005女計(jì)算機(jī)3970502王鷹198103男計(jì)算機(jī)3970601周麗198205女機(jī)械3980209李強(qiáng)198011男化工2鍵1,2,3,4域字

名元組(行)字段(列)整數(shù)字符串?dāng)?shù)值學(xué)生登記表關(guān)系名關(guān)系數(shù)據(jù)模型學(xué)號(hào)姓名年齡性別班級(jí)1005張力21男203學(xué)號(hào)課程號(hào)成績(jī)1005002189學(xué)生關(guān)系成績(jī)關(guān)系課程關(guān)系NMNM課程號(hào)課程名稱0021代數(shù)關(guān)系模型的性質(zhì)

二維表中的每一列的元素類型相同;列不可重名;列的順序可以任意;行的順序可以任意;表中任意兩行不能完全相同(不可重行);表中的元素是不可再分的最小數(shù)據(jù)項(xiàng)。數(shù)據(jù)庫(kù)定義數(shù)據(jù)庫(kù)(DataBase):是指長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織地、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫(kù)數(shù)據(jù)具有永久存儲(chǔ)、有組織、可共享三個(gè)基本特點(diǎn)。數(shù)據(jù)庫(kù)的基本特征數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存,可為各種用戶共享、冗余度較小、易擴(kuò)展,數(shù)據(jù)獨(dú)立性較高數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBaseManagementSystem)DBMS是位于用戶與操作系統(tǒng)之間的一層對(duì)數(shù)據(jù)進(jìn)行管理的軟件系統(tǒng)。它能按照數(shù)據(jù)庫(kù)的方法建立、維護(hù)、存儲(chǔ)及實(shí)現(xiàn)對(duì)DB的各種控制,并能向應(yīng)用系統(tǒng)提供數(shù)據(jù)和信息支持的系統(tǒng)。DBMS的基本功能:①數(shù)據(jù)庫(kù)定義和建立

②數(shù)據(jù)存取功能③數(shù)據(jù)庫(kù)運(yùn)行控制功能④組織、存儲(chǔ)、管理和維護(hù)等

數(shù)據(jù)庫(kù)語(yǔ)言數(shù)據(jù)庫(kù)語(yǔ)言(SQL)是用戶與DBMS之間的媒介,完成對(duì)數(shù)據(jù)庫(kù)操作的工具。數(shù)據(jù)庫(kù)語(yǔ)言DDL數(shù)據(jù)描述語(yǔ)言:定義數(shù)據(jù)結(jié)構(gòu)及約束DML數(shù)據(jù)操縱語(yǔ)言:實(shí)現(xiàn)數(shù)據(jù)操作DCL數(shù)據(jù)控制語(yǔ)言:進(jìn)行數(shù)據(jù)控制DBMS數(shù)據(jù)庫(kù)SQL數(shù)據(jù)庫(kù)系統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)(DataBaseSystem)

DBS是一個(gè)實(shí)際可運(yùn)行的,按照數(shù)據(jù)庫(kù)方式存儲(chǔ)、維護(hù)和向應(yīng)用系統(tǒng)提供數(shù)據(jù)或信息支持的系統(tǒng);它是存儲(chǔ)介質(zhì)、處理對(duì)象和管理系統(tǒng)的集合體,方便多用戶訪問(wèn)的計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng)。數(shù)據(jù)庫(kù)系統(tǒng)的構(gòu)成相互有關(guān)聯(lián)關(guān)系的數(shù)據(jù)的集合DBDBMS管理數(shù)據(jù)庫(kù)的系統(tǒng)軟件DBA完成某一功能的應(yīng)用程序1應(yīng)用程序2應(yīng)用程序nDBAP1DBAP2DBAPnComputerSystem(硬件和軟件)數(shù)據(jù)庫(kù)系統(tǒng)的構(gòu)成硬件應(yīng)用系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)操作系統(tǒng)應(yīng)用程序員數(shù)據(jù)庫(kù)管理員Database用戶最終用戶應(yīng)用開發(fā)工具本講內(nèi)容回顧信息數(shù)據(jù)DBMSDBDBS數(shù)據(jù)模型層次網(wǎng)狀模型關(guān)系模型非關(guān)系模型數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作完整約束SQLSQLThankYou!ThankYou!謝謝學(xué)習(xí)數(shù)據(jù)庫(kù)虛擬教研室制作數(shù)據(jù)庫(kù)《數(shù)據(jù)庫(kù)原理及應(yīng)用》03

關(guān)系的完整性01

關(guān)系代數(shù)的基本術(shù)語(yǔ)02關(guān)系模式與關(guān)系04

關(guān)系運(yùn)算目錄第2章關(guān)系數(shù)據(jù)庫(kù)理論關(guān)系數(shù)據(jù)庫(kù)的奠基人E.F.Codd,英國(guó)人,1923生于英格蘭中部波特蘭。第二次世界大戰(zhàn)時(shí)應(yīng)征入伍,在皇家空軍服役。大戰(zhàn)結(jié)束后,到英國(guó)牛津大學(xué)數(shù)學(xué)專業(yè)學(xué)習(xí),1963年獲得碩士學(xué)位,1965年又獲得博士學(xué)位。60年代后期開始數(shù)據(jù)庫(kù)研究,1970年E.F.Codd博士提出關(guān)系模型概念,他因此獲得1981年的ACM圖靈獎(jiǎng)。E.F.Codd博士關(guān)系數(shù)據(jù)庫(kù)之父美國(guó)工程院院士關(guān)系代數(shù)的定義關(guān)系理論是建立在集合代數(shù)理論基礎(chǔ)上的,有著堅(jiān)實(shí)的數(shù)學(xué)基礎(chǔ)。

定義1:域(Domain)是一組具有相同類型的值的集合。例:性別集合{男,女};正整數(shù)集合{1,2,3,……};姓名集合{張三,李四,王五};全體實(shí)數(shù)的集合等都可以稱為是域。關(guān)系代數(shù)的定義

定義2:笛卡爾積給定一組域D1,D2,…,Dn,

D1,D2,…,Dn的笛卡兒積為D1×D2×…×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}笛卡兒積中每一個(gè)元素(d1,d2,…,dn)叫做一個(gè)n元組。兩個(gè)名詞:度(n):參與笛卡兒積的域的個(gè)數(shù)。

基:域中可取值的個(gè)數(shù)。

關(guān)系代數(shù)的定義例:設(shè)有域

D1=姓名集合(NAME)={王三,丁平};

D2=職業(yè)集合(JOB)={工人,農(nóng)民,商人};

D3=住址集合(ADDR)={北京,上海,廣州};則D1×D2×D3={問(wèn)題:笛卡兒積的度為多少?笛卡兒積的基為多少?(王三,工人,北京),(王三,工人,上海),(王三,工人,廣州),(王三,農(nóng)民,北京),(王三,農(nóng)民,上海),(王三,農(nóng)民,廣州),(王三,商人,北京),(王三,商人,上海),(王三,商人,廣州),(丁平,工人,北京),(丁平,工人,上海),(丁平,工人,廣州),(丁平,農(nóng)民,北京),(丁平,農(nóng)民,上海),(丁平,農(nóng)民,廣州),(丁平,商人,北京),(丁平,商人,上海),(丁平,商人,廣州)}

關(guān)系代數(shù)的定義

定義3:關(guān)系

D1×D2×…×Dn的子集叫作在域D1,D2,

…,Dn上的關(guān)系,記為R(D1,D2,…,Dn)。

一般說(shuō)來(lái),只有笛卡兒積的子集才是有意義的。為什么?學(xué)號(hào)姓名年齡年級(jí)0104趙六2010101張三2020103王五1930102李四182關(guān)系代數(shù)的基本術(shù)語(yǔ)①記錄和屬性記錄是行,屬性是列,域是屬性的取值范圍。學(xué)號(hào)姓名年齡年級(jí)0104趙六2010101張三2020103王五1930102李四182

關(guān)系就是一張二維表。

一行稱為一個(gè)元組或一條記錄,一列叫一個(gè)屬性或一個(gè)字段。關(guān)系代數(shù)的基本術(shù)語(yǔ)②關(guān)系的碼(Key)

(或候選碼、鍵)。

如果一個(gè)屬性(或?qū)傩约希┑闹的芪ㄒ坏貥?biāo)識(shí)一個(gè)關(guān)系的元組而又不含有多余的屬性,則稱該屬性(或?qū)傩约希殛P(guān)系的碼(或候選碼,也稱鍵)。每個(gè)關(guān)系都有一個(gè)且只有一個(gè)主碼(PrimaryKey)。學(xué)號(hào)姓名年齡年級(jí)0104趙六2010101張三2020103王五1930102李四182關(guān)系代數(shù)的基本術(shù)語(yǔ)③外碼(ForeignKey)

如果某一個(gè)關(guān)系中的屬性(或?qū)傩约希┰诹硪粋€(gè)關(guān)系中是主碼,則稱該屬性(或?qū)傩约希┦峭獯a。

學(xué)號(hào)姓名所在系0101010201030104張三李四王五趙六計(jì)算機(jī)計(jì)算機(jī)計(jì)算機(jī)計(jì)算機(jī)課程號(hào)課程名學(xué)時(shí)數(shù)C01C02C03C04高等數(shù)學(xué)數(shù)據(jù)結(jié)構(gòu)操作系統(tǒng)數(shù)據(jù)庫(kù)100708060學(xué)號(hào)課程號(hào)成績(jī)01010101010201040104C01C02C04C04C039080908570學(xué)生關(guān)系課程關(guān)系學(xué)習(xí)成績(jī)關(guān)系外部碼外部碼主碼主碼關(guān)系模式

定義:

關(guān)系數(shù)據(jù)模型中的數(shù)據(jù)結(jié)構(gòu)就是關(guān)系模式,即是對(duì)關(guān)系的描述。關(guān)系模式通??梢院?jiǎn)記為:

R(A1,A2,…,An)

R:關(guān)系名

A1,A2,…,An:屬性名

如:STUDENT(SNO,SNAME,SEX,SAGE,DEPT)或?qū)W生(學(xué)號(hào),姓名,性別,年齡,系)關(guān)系的完整性約束類型說(shuō)明實(shí)體完整性約束主鍵的值參照完整性約束外鍵的值用戶自定義完整性(域完整性)約束其他字段的值關(guān)系的完整性約束(1)實(shí)體完整性(PRIMARYKEY)規(guī)則:設(shè)屬性A是基本關(guān)系R的主屬性(碼的組成部分),則屬性A不能空值(NULL)和碼不能出現(xiàn)重復(fù)值。說(shuō)明:實(shí)體完整性是針對(duì)基本關(guān)系的;本規(guī)則要求基本關(guān)系中的元組在組成碼屬性上不能有空值;現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)(不取重復(fù)值)關(guān)系的完整性約束(2)參照(引用)完整性(FOREIGNKEY)規(guī)則:基本關(guān)系R中含有與另一個(gè)基本關(guān)系S的主碼相對(duì)應(yīng)的屬性組F(F稱為R的外碼),則對(duì)于R中的每個(gè)元組在F上的值必須為:

①或者取空值(F的每個(gè)屬性值均為空值);

②或者等于S中某個(gè)元組的主碼值

引用完整性約束是不同關(guān)系之間或同一關(guān)系的不同元組間的約束。

本規(guī)則要求不允許引用不存在的元組;關(guān)系的完整性約束例1:職工關(guān)系EMP(ENO,ENAME,DNO)

部門關(guān)系DEPT(DNO,DNAME)

在EMP中,DNO是外碼。EMP中每個(gè)元組在DNO

上的值允許有兩種可能:①取空值。這說(shuō)明這個(gè)職工尚未分配到某個(gè)部門;

②若非空值,則DNO的值必須是DEPT中某個(gè)元組中的DNO值。表示此職工不可能分配到一個(gè)不存在的部門。關(guān)系的完整性約束職工號(hào)部門編號(hào)姓名…9801980298039804980501010203張三李四王五趙六錢七部門編號(hào)部門名稱…01020304經(jīng)理辦公室人事部公關(guān)部技術(shù)部職工表(EMP)部門表(DEPT)關(guān)系主碼外部關(guān)系碼關(guān)系的完整性約束例2:學(xué)生實(shí)體及其內(nèi)部的聯(lián)系

學(xué)生(學(xué)號(hào),姓名,性別,專業(yè)號(hào),年齡,班長(zhǎng))關(guān)系的完整性約束例3:選修(學(xué)號(hào),課程號(hào),成績(jī))

“學(xué)號(hào)”和“課程號(hào)”可能的取值:(1)選修關(guān)系中的主屬性,不能取空值(2)只能取相應(yīng)被參照關(guān)系中已經(jīng)存在的主碼值關(guān)系的完整性約束(3)域完整性(用戶自定義完整性)規(guī)則:要求屬性值必須取自其對(duì)應(yīng)的值域。例:學(xué)生的性別只能是:‘男’和‘女’CONSTRAINTSXCHECK(性別IN(‘男’,‘女’)傳統(tǒng)的集合運(yùn)算定義1.

設(shè)給定兩個(gè)關(guān)系R和S,若滿足:具有相同的度n,且R中第i個(gè)屬性和S中第i個(gè)屬性必須來(lái)自同一個(gè)域,則說(shuō)關(guān)系R和S是相容的。即:關(guān)系R和S有相同的度,即有相同的屬性個(gè)數(shù),且對(duì)應(yīng)的屬性的域相同。

傳統(tǒng)集合運(yùn)算的兩個(gè)關(guān)系必須是相容的。約定:大寫字母表示命名關(guān)系和關(guān)系的屬性;小寫字母表示元組。

傳統(tǒng)的集合運(yùn)算①并(Union)

關(guān)系R和S的并記為R∪S,結(jié)果仍為n度關(guān)系,由或?qū)儆赗或?qū)儆赟的元組組成。RSR∪S傳統(tǒng)的集合運(yùn)算②差(Minus)

關(guān)系R和S的差記為R-S,結(jié)果仍為n度關(guān)系,由屬于R而不屬于S的元組組成。RSR-S傳統(tǒng)的集合運(yùn)算③交(Intersect[??nt??sekt])

關(guān)系R和S的并記為R∩S,結(jié)果仍為n度關(guān)系,由既屬于R又屬于S的元組組成。RSR∩SR∩S=R–(R-S)廣義笛卡兒積

廣義笛卡兒積

R是一個(gè)n度關(guān)系,S是一個(gè)m度關(guān)系。關(guān)系R和S的廣義笛卡兒積記為R×S,其結(jié)果是(n+m)度的關(guān)系,結(jié)果中的元組是R中元組和S中元組連成的一串,前n個(gè)分量是R中的一個(gè)元組,后m個(gè)分量是S的一個(gè)元組。假定R中有元組(r1,r2,…,rn),S中有元組(s1,s2,…,sm),則結(jié)果中的元組為

(r1,r2,…,rn,s1,s2,…,sm)。若R有k1個(gè)元組,S有k2個(gè)元組,則R×S有k1×k2個(gè)元組。

廣義笛卡兒積例:ABCa1b1c1a1b2c2a2b2c1ABDa1b2c2a1b3c2a2b2c1RSABCA′B′Da1b1c1a1b2c2a1b1c1a1b3c2a1b1c1a2b2c1a1b2c2a1b2c2a1b2c2a1b3c2a1b2c2a2b2c1a2b2c1a1b2c2a2b2c1a1b3c2a2b2c1a2b2c1R×S記錄個(gè)數(shù)9度數(shù)6專門的關(guān)系運(yùn)算①選擇(Select)σ(sigma)從一個(gè)關(guān)系中選出所有滿足指定條件的元組。即在給定關(guān)系中,從水平方向上選取符合給定條件的元組的子集。一般定義為:

σF(R)={t|t∈R∧F(t)=‘True’}

讀作關(guān)系R關(guān)于公式F的選擇運(yùn)算,表示從R中選擇那些滿足公式F的元組。

專門的關(guān)系運(yùn)算SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22SCNOCNAMECTC1高等代數(shù)144C2程序設(shè)計(jì)100C3微機(jī)原理44C4數(shù)據(jù)結(jié)構(gòu)64C5編譯原理90C6操作系統(tǒng)32CSNOCNOGRADE96004C39596004C57096005C28196005C395SC例:設(shè)有學(xué)生-課程關(guān)系數(shù)據(jù)庫(kù),如下所示:專門的關(guān)系運(yùn)算例1:求計(jì)算機(jī)系的學(xué)生。σSDEPT=‘計(jì)算機(jī)’(S)例2:求計(jì)算機(jī)系叫的張三學(xué)生。σSDEPT=‘計(jì)算機(jī)’^SNAME=‘張三’(S)SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22專門的關(guān)系運(yùn)算②投影(Projection)∏(pi)

從一個(gè)關(guān)系出發(fā)構(gòu)造其垂直子集的運(yùn)算,即結(jié)果關(guān)系由運(yùn)算分量中的某些列組成,并消去重復(fù)的元組。一般定義為:關(guān)系R在域列A上的投影:∏A(R)={t[A]|t∈R}

∏表示投影運(yùn)算符;A為R中的屬性列,R是運(yùn)算對(duì)象的關(guān)系,寫在∏之后用()括起來(lái)。專門的關(guān)系運(yùn)算注意:

因?yàn)橥队斑\(yùn)算的屬性表不一定包含關(guān)系的碼,經(jīng)投影運(yùn)算后,結(jié)果中很可能出現(xiàn)重復(fù)元組,消除重復(fù)元組后所得關(guān)系的元組將小于等于原關(guān)系的元組數(shù)。如果屬性列中包含碼,則不可能出現(xiàn)重復(fù)元組,投影運(yùn)算后所得關(guān)系的元組與原關(guān)系一樣。

投影不僅會(huì)取消一些列,也可能取消某些行。但在實(shí)際的SQL實(shí)現(xiàn)時(shí)要靠關(guān)鍵字來(lái)完成。專門的關(guān)系運(yùn)算例1:求學(xué)生關(guān)系S在學(xué)生姓名和所在系這兩個(gè)屬性上的投影?!荢NAME,SDEPT(S)例2:求有多少個(gè)系?!荢DEPT(S)SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22專門的關(guān)系運(yùn)算③連接(Join)θ連接

一般定義為:

R∞SAθB

∞(Infinity)表示連接運(yùn)算符;θ通常為比較運(yùn)算符,但還有其他一些運(yùn)算符,AθB是條件表達(dá)式。含義是:從R×S的廣義笛卡兒積中選取R關(guān)系在A屬性組上的值與S關(guān)系在B屬性組上值滿足比較運(yùn)算θ的那些元組。專門的關(guān)系運(yùn)算ABCa12ca24da34cDEd4e10ABCDEa12cd4a12ce10a24de10a34ce10RSR∞SB<E專門的關(guān)系運(yùn)算自然連接(NaturalJoin)

是一種特殊而常用的連接。自然連接只當(dāng)兩個(gè)關(guān)系含有公共屬性時(shí)才能進(jìn)行。

若關(guān)系R和關(guān)系S具有公共屬性組B,則自然連接定義為:

R∞S含義是:

從兩個(gè)關(guān)系的笛卡兒積中選取公共屬性值相等的元組,且在非公共屬性和一組公共屬性上投影而形成的結(jié)果關(guān)系。專門的關(guān)系運(yùn)算ABCa1b1c2a2b2c1a3b1c3a4b2c5a5b3c1BCDEb1c2d1e1b3c1d2e2b1c3d3e3b1c2d4e4b3c1d5e5ABCDEa1b1c2d1e1a1b1c2d4e4a3b1c3d3e3a5b3c1d2e2a5b3c1d5e5RSAR.BR.CS.BS.CDEa1b1c2b1c2d1e1a1b1c2b1c2d4e4a3b1c3b1c3d3e3a5b3c1b3c1d2e2a5b3c1b3c1d5e5R.BC=S.BCR∞SR∞S專門的關(guān)系運(yùn)算比較:等值連接與自然連接

等值連接是在笛卡兒積的基礎(chǔ)上選擇滿足兩個(gè)關(guān)系中給定屬性值相等的元組的集合。自然連接是在兩個(gè)關(guān)系的相同屬性組上的等值連接,并且自然連接要在結(jié)果中把重復(fù)的屬性去掉,而等值連接則不必。

自然連接要求兩個(gè)關(guān)系中相等的分量必須是公共屬性組,而等值連接則不需要。專門的關(guān)系運(yùn)算

外連接

如果把舍棄的元組也保存在結(jié)果關(guān)系中,而在其他屬性上填空值(Null),這種連接就叫做外連接(OUTERJOIN)。左外連接

如果只把左邊關(guān)系R中要舍棄的元組保留就叫做左外連接(LEFTOUTERJOIN或LEFTJOIN)

右外連接

如果只把右邊關(guān)系S中要舍棄的元組保留就叫做右外連接(RIGHTOUTERJOIN或RIGHTJOIN)。專門的關(guān)系運(yùn)算關(guān)系R和關(guān)系S

如下所示:專門的關(guān)系運(yùn)算關(guān)系R和關(guān)系S的外連接:專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算關(guān)系代數(shù)示例例1:求選修‘C2’課程的學(xué)生號(hào)碼?!荢NO(σCNO=‘C2’(SC))例2:求同時(shí)選修‘C3’和‘C5’課程的學(xué)生號(hào)碼?!荢NO(σCNO=‘C3’(SC))∩

∏SNO(σCNO=‘C5’(SC)

SNOCNOGRADE96004C39596004C57096005C28196005C395SC專門的關(guān)系運(yùn)算例3:求至少選修一門學(xué)時(shí)數(shù)為90的課程的學(xué)生姓名?!荢NAME(σCT=90(C)∞∏SNO,CNO(SC)∞∏SNO,SNAME(S))SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22CNOCNAMECTC1高等代數(shù)144C2程序設(shè)計(jì)100C3微機(jī)原理44C4數(shù)據(jù)結(jié)構(gòu)64C5編譯原理90C6操作系統(tǒng)32SNOCNOGRADE96004C39596004C57096005C28196005C395專門的關(guān)系運(yùn)算例4:求選修數(shù)據(jù)結(jié)構(gòu)或操作系統(tǒng)學(xué)生的學(xué)號(hào)和姓名。

∏SNO,SNAME(σSNAME=‘?dāng)?shù)據(jù)結(jié)構(gòu)’VSNAME=‘操作系統(tǒng)’(C)∞∏SNO,CNO(SC)∞S)SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22CNOCNAMECTC1高等代數(shù)144C2程序設(shè)計(jì)100C3微機(jī)原理44C4數(shù)據(jù)結(jié)構(gòu)64C5編譯原理90C6操作系統(tǒng)32SNOCNOGRADE96004C39596004C57096005C28196005C395專門的關(guān)系運(yùn)算∏CNO(C)-∏CNO(σSNAME=‘王’(S)∞SC))例5求‘王’同學(xué)不學(xué)的課程的課程號(hào)。例6將新課程元組(‘C9’,‘物理’,144)插入到課程關(guān)系C中。C∪{(‘C9’,‘物理’,144)}專門的關(guān)系運(yùn)算例7:將學(xué)號(hào)96004,選修課程號(hào)為‘C5’的成績(jī)改為85分。分解執(zhí)行為三步:

第一步:取出元組,并命名為V

V=σSNO=‘96004’∧CNO=‘C5’(SC)

第二步:刪除這個(gè)元組

SC-V

第三步:插入新元組

SC∪{(‘96004’,‘C5’,85)}SNOCNOGRADE96004C39596004C57096005C28196005C395專門的關(guān)系運(yùn)算④除(Division)一般定義為:設(shè)關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域。除運(yùn)算記為R÷S:專門的關(guān)系運(yùn)算

象集給定一個(gè)關(guān)系R(X,Z),其中X,Z為屬性組。定義當(dāng)t[X]=x時(shí),x在R中的象集為:

Zx={t[Z]|t∈R,t[X]=x}

表示R中屬性組X上值為x的諸元組在Z上分量的集合。專門的關(guān)系運(yùn)算A={a1,a2,a3}a1在R中的象集

Ba1={B1,B2,B3},a2在R中的象集

Ba2={B2,B3},a3在R中的象集

Ba3={B1,B3}例

已知R(A,B),求Ba象集ABa1B1a1B2a1B3a2B2a2B3a3B1a3B3R專門的關(guān)系運(yùn)算例:設(shè)關(guān)系R(A,B,C,D)和S(C,D,F),求R÷SABCDabcdabefbcefedcdedefabdeCDFcddefeRSABabed四、計(jì)算R÷S{(a,b),(e,d)}XYY一、計(jì)算X的元素集合。

X=(A,B)={(a,b),(b,c),(e,d)}三、Y在S上的投影∏Y(S)在(C,D)上的投影為{(c,d),(e,f)}二、計(jì)算x的象集。Yx:(a,b)的象集{(c,d),(e,f),(d,e)}

(b,c)的象集{(e,f)}

(e,d)的象集{(c,d),(e,f)}專門的關(guān)系運(yùn)算∏SNAME(S∞(∏SNO,CNO(SC)÷∏CNO(C)))例1求出選修全部課程學(xué)生姓名。SNOSNAMESDEPTSAGE96001丁一計(jì)算機(jī)1996002王二計(jì)算機(jī)2096003張三數(shù)學(xué)2196004李四信息1996005劉五數(shù)學(xué)2096006趙六計(jì)算機(jī)22CNOCNAMECTC1高等代數(shù)144C2程序設(shè)計(jì)100C3微機(jī)原理44C4數(shù)據(jù)結(jié)構(gòu)64C5編譯原理90C6操作系統(tǒng)32SNOCNOGRADE96004C39596004C57096005C28196005C395專門的關(guān)系運(yùn)算查詢優(yōu)化:

選擇有效的策略,求出給定關(guān)系表達(dá)式的值,使得查詢代價(jià)最小。啟發(fā)式規(guī)則:(1)盡可能早地做選擇運(yùn)算;(2)盡可能早地做投影操作;(3)避免直接做笛卡兒集運(yùn)算。本講內(nèi)容回顧定義與術(shù)語(yǔ)關(guān)系模式與關(guān)系差并交連接選擇投影除廣義笛卡爾積專門關(guān)系運(yùn)算傳統(tǒng)集合運(yùn)算關(guān)系運(yùn)算關(guān)系完整性域完整性實(shí)體完整性參照完整性作業(yè)教材P282.4《數(shù)據(jù)庫(kù)原理及應(yīng)用》數(shù)據(jù)庫(kù)虛擬教研室制作數(shù)據(jù)庫(kù)目錄01

MySQL數(shù)據(jù)庫(kù)02MySQL數(shù)據(jù)庫(kù)的安裝與配置03MySQL服務(wù)04MySQL客戶端工具第3章搭建數(shù)據(jù)庫(kù)實(shí)驗(yàn)環(huán)境MySQL數(shù)據(jù)庫(kù)特點(diǎn):

MySQL是一個(gè)跨平臺(tái)的開源關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),廣泛應(yīng)用在Internet上的中小型網(wǎng)站開發(fā)中。

相比其它關(guān)系數(shù)據(jù)庫(kù),因其體積小、速度快、成本低的特點(diǎn),是目前世界上非常受歡迎的開放源代碼數(shù)據(jù)庫(kù)之一。MySQL數(shù)據(jù)庫(kù)版本:

(1)MySQLCommunityServer(社區(qū)版):該版本完全免費(fèi),但是官方不提供技術(shù)支持。用戶可以自由下載使用。(2)MySQLEnterpriseServer(企業(yè)版服務(wù)器):為企業(yè)提供數(shù)據(jù)庫(kù)應(yīng)用,支持ACID事務(wù)處理,提供完整的提交、回滾、崩潰恢復(fù)和行政鎖定功能。需要付費(fèi)使用,官方提供技術(shù)支持。MySQL數(shù)據(jù)庫(kù)的安裝與配置

Windows操作系統(tǒng)下,MySQL數(shù)據(jù)庫(kù)的安裝包分為圖形化界面安裝和免安裝兩種。

這里以圖形化界面安裝為例。MySQL數(shù)據(jù)庫(kù)的安裝與配置1.MySQL下載(1)打開MySQL官網(wǎng)();(2)點(diǎn)擊DOWNLOADS進(jìn)入產(chǎn)品列表,點(diǎn)擊社區(qū)版下載鏈接MySQLCommunityDownloads;(3)下載Windows操作系統(tǒng)圖形化MySQL安裝包(本書安裝的是MySQL8.0.26)。2.MySQL安裝(1)雙擊MySQL安裝文件,進(jìn)入MySQL安裝界面,如圖所示,選擇安裝類型。

DeveloperDefault:默認(rèn)安裝

Serveronly:僅作為服務(wù)

Clientonly:僅作為客戶端

Full:完全安裝

Custom:自定義安裝

這里選默認(rèn)安裝類型MySQL數(shù)據(jù)庫(kù)的安裝與配置2.MySQL安裝(2)進(jìn)入“CheckRequirements”界面,如圖所示。

然后單擊Next按鈕進(jìn)入下一步。MySQL數(shù)據(jù)庫(kù)的安裝與配置2.MySQL安裝(3)進(jìn)入安裝確認(rèn)界面,如圖所示,點(diǎn)擊Execute按鈕,開始MySQL各個(gè)產(chǎn)品的安裝。MySQL數(shù)據(jù)庫(kù)的安裝與配置2.MySQL安裝(4)開始安裝MySQL文件,安裝完成后在【Status】列表下顯示Complete,如圖所示。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(1)在安裝的最后一步中,點(diǎn)擊Next按鈕進(jìn)入服務(wù)器配置窗口,進(jìn)行配置信息的確認(rèn),如圖所示。

確認(rèn)后點(diǎn)擊Next按鈕。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(2)進(jìn)入服務(wù)器類型和網(wǎng)絡(luò)配置窗口,如圖所示。網(wǎng)絡(luò)連接一般使用TCP/IP模式,默認(rèn)端口為3306。單擊Next按鈕進(jìn)入下一步。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(3)進(jìn)入認(rèn)證方式,如圖3所示,選擇使用強(qiáng)密碼認(rèn)證還是使用已有認(rèn)證方式。初次使用,可保持默認(rèn)設(shè)置。單擊Next按鈕進(jìn)入下一步。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(4)配置管理員賬號(hào)和密碼,如圖所示。輸入管理員root賬號(hào)的密碼,記住該密碼以便配置完成后進(jìn)行登錄。單擊Next按鈕進(jìn)入下一步。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(5)配置MySQL服務(wù)的實(shí)例名稱以及是否在系統(tǒng)啟動(dòng)后自動(dòng)運(yùn)行,如圖所示??墒褂媚J(rèn)設(shè)置。單擊Next按鈕進(jìn)入下一步。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(6)根據(jù)上述配置進(jìn)入界面,如圖所示,點(diǎn)擊Execute按鈕完成MySQL的各項(xiàng)配置。MySQL數(shù)據(jù)庫(kù)的安裝與配置3.MySQL配置(7)都檢測(cè)通過(guò)后,繼續(xù)點(diǎn)擊Finish、Next安裝就可配置完成了。MySQL安裝配置完成的界面如圖所示。MySQL數(shù)據(jù)庫(kù)的安裝與配置管理MySQL服務(wù)1.通過(guò)Windows服務(wù)管理器管理MySQL服務(wù)從Windows桌面右擊【計(jì)算機(jī)】→【管理】→【服務(wù)】打開Windows的服務(wù)管理器,如圖所示,MySQL服務(wù)名為MySQL80。啟動(dòng)類型有3種類型可供選擇:(1)自動(dòng):隨系統(tǒng)一起啟動(dòng)。(2)手動(dòng):需要時(shí)啟動(dòng)。(3)禁用:服務(wù)將不能啟動(dòng)。注意:如果要使用MySQL,服務(wù)的狀態(tài)必須為已啟動(dòng)。管理MySQL服務(wù)2.通過(guò)命令行管理MySQL服務(wù)使用管理員身份打開命令提示符,輸人如下命令啟動(dòng)名稱為MySQL的服務(wù):netstartMySQL80通過(guò)如下命令停止MySQL服務(wù):netstopMySQL80命令行窗口登錄MySQL服務(wù)在MySQL的bin目錄中,mysql.exe是MySQL提供的命令行客戶端工具,用于訪問(wèn)數(shù)據(jù)庫(kù)。該程序不能直接雙擊運(yùn)行,需要打開命令行窗口,執(zhí)行如下命令。mysql-u<用戶名>–p<密碼>成功登錄MySQL服務(wù)器后,效果如圖所示。命令行窗口登錄MySQL服務(wù)當(dāng)CMD命令提示符窗口中提示符變成“mysql>”后,表示連接MySQL服務(wù)成功,即可輸入SQL語(yǔ)句,如輸入“showdatabases;”查看服務(wù)器中的所有數(shù)據(jù)庫(kù)。

mysql>showdatabases;MySQL客戶端工具為了方便操作,可以使用一些圖形化的的客戶端工具,如SQLyog、Navicat和MySQLWorkbench等。

本書主要以SQLyog為主介紹。SQLyog的安裝及使用(1)打開SQLyog的官網(wǎng)“”,下載并進(jìn)行安裝SQLyog;SQLyog的安裝及使用(2)打開SQLyog,建立新的連接。

我的SQL主機(jī)地址:默認(rèn)為“l(fā)ocalhost”

用戶名和密碼:可輸入root和相應(yīng)密碼

端口:使用MySQL默認(rèn)端口號(hào)3306

數(shù)據(jù)庫(kù):默認(rèn)為服務(wù)器中的所有數(shù)據(jù)庫(kù)SQLyog的安裝及使用(3)連接成功,進(jìn)入主界面,將上課用的教學(xué)案例文檔拷貝至查詢窗口r后,點(diǎn)擊工具欄上的“ExecuteAllQueries”創(chuàng)建數(shù)據(jù)庫(kù)(eaching_manage)及表(student、course、score)。查詢teaching_manage數(shù)據(jù)庫(kù)中的student表的數(shù)據(jù):SELECT*FROMstudent;ThankYou!ThankYou!謝謝學(xué)習(xí)《數(shù)據(jù)庫(kù)原理及應(yīng)用》數(shù)據(jù)庫(kù)虛擬教研室制作數(shù)據(jù)庫(kù)目錄01

SQL概述02存儲(chǔ)引擎03字符集與字符編碼04MySQL數(shù)據(jù)庫(kù)管理05MySQL數(shù)據(jù)類型06MySQL數(shù)據(jù)表管理07數(shù)據(jù)表的數(shù)據(jù)操作第4章數(shù)據(jù)庫(kù)及表基本操作SQL概述SQL:StructuredQueryLanguage,結(jié)構(gòu)化查詢語(yǔ)言。其功能包括數(shù)據(jù)查詢、定義、操縱和控制等方面。SQL有SQL89、SQL92和SQL99多個(gè)版本,并向下兼容。注意:SQL是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言,在語(yǔ)法上,不同的數(shù)據(jù)庫(kù)產(chǎn)品略有不同,MySQL的語(yǔ)法與其他工具差別較大。SQL組成數(shù)據(jù)庫(kù)存儲(chǔ)引擎:是數(shù)據(jù)庫(kù)底層軟件組織,是對(duì)數(shù)據(jù)庫(kù)文件的一種存取機(jī)制,為存儲(chǔ)的數(shù)據(jù)建立索引以及如何實(shí)現(xiàn)更新、查詢數(shù)據(jù)等技術(shù)的方法。存儲(chǔ)引擎為什么要使用不同的存儲(chǔ)引擎:現(xiàn)實(shí)生活中,由于不同業(yè)務(wù)產(chǎn)生了不同的數(shù)據(jù),這些數(shù)據(jù)有的可能偏重于被頻繁查詢,有的可能偏重于修改速度,有的則對(duì)事務(wù)、索引、外鍵有特殊規(guī)定。這樣一來(lái),就對(duì)存儲(chǔ)數(shù)據(jù)要求使用不同的數(shù)據(jù)組織結(jié)構(gòu),使用不同的存儲(chǔ)引擎可以將數(shù)據(jù)以不同的結(jié)構(gòu)進(jìn)行存儲(chǔ)。查看MySQL支持的存儲(chǔ)引擎:

showengines存儲(chǔ)引擎存儲(chǔ)引擎的類型服務(wù)器是否支持該類型引擎注釋事務(wù)分布式交易處理的XA規(guī)范事務(wù)保存點(diǎn)通過(guò)系統(tǒng)變量default-storage-engine來(lái)查看存儲(chǔ)引擎,查看方式:showvariableslike‘default-storage-engine’;存儲(chǔ)引擎MySQL存儲(chǔ)引擎可在定義表的時(shí)候設(shè)置,也可以通過(guò)修改表的方式來(lái)設(shè)置。服務(wù)器在運(yùn)行期間可修改數(shù)據(jù)庫(kù)服務(wù)器默認(rèn)存儲(chǔ)引擎方式:setdefault-storage-engine=存儲(chǔ)引擎名;數(shù)據(jù)庫(kù)服務(wù)在啟動(dòng)時(shí)會(huì)讀取配置文件my.ini,配置文件中有默認(rèn)存儲(chǔ)引擎的設(shè)置。(C:\ProgramData\MySQL\MySQL

Server

8.0\my.ini)[mysqld]default-storage-engine=innodb字符集(Characterset):是字符的集合,是一套符號(hào)以及編碼規(guī)則,以二進(jìn)制形式存儲(chǔ)。常用的字符集如下表:字符集與字符編碼字符編碼:將字符變成字節(jié)的過(guò)程。在符號(hào)集合與數(shù)字系統(tǒng)之間建立對(duì)應(yīng)關(guān)系。與字符集相對(duì)應(yīng),不同的字符集有不同的字符編碼。解碼:將二進(jìn)制字節(jié)轉(zhuǎn)換成對(duì)應(yīng)字符的過(guò)程。字符集與字符編碼轉(zhuǎn)碼utf8gbk查看當(dāng)前MSQL支持的字符集及其默認(rèn)的排序方式:showcharset;/showcharacterset;使用系統(tǒng)變量查看當(dāng)前MySQL使用的字符集:showvariableslike'character%';字符集與字符編碼數(shù)據(jù)庫(kù)服務(wù)在啟動(dòng)時(shí)會(huì)讀取配置文件my.ini,配置文件中有默認(rèn)字符集的設(shè)置。[client]default-character-set=utf8[mysql]default-character-set=utf8[mysqld]character-set-server=utf8字符序:是指在同一字符集內(nèi)字符之間的比較規(guī)則。字符集與字符編碼如何比較兩個(gè)英文字符的大小?最簡(jiǎn)單的方式是比較兩個(gè)字符二進(jìn)制編碼的大小,如ASCII碼字符集中的’A’的編號(hào)為65,’a’的編碼為97。如何比較兩個(gè)漢字字符的大小?UTF8中文采用康熙字典中定義的偏旁索引順序排序,GBK中文采用新華字典中定義的字母順序排序。二都可以轉(zhuǎn)碼。例:將student表的sname字段由utf8字符集轉(zhuǎn)為gbk排序。SELECT*FROMstudentORDERBYCONVERT(snameUSINGgbk);創(chuàng)建數(shù)據(jù)庫(kù)創(chuàng)建數(shù)據(jù)庫(kù)的語(yǔ)法格式CREATEDATABASE|SCHEMA[IFNOTEXISTS]db_name[[DEFAULT]CHARACTERSETcharset_name][[DEFAULT]COLLATEcollation_name];MySQL數(shù)據(jù)庫(kù)管理創(chuàng)建數(shù)據(jù)庫(kù)命令早期數(shù)據(jù)庫(kù)稱謂待創(chuàng)建數(shù)據(jù)庫(kù)名已經(jīng)存在時(shí),給出錯(cuò)誤信息待創(chuàng)建數(shù)據(jù)庫(kù)名設(shè)置默認(rèn)字符集設(shè)置字符集默認(rèn)校對(duì)規(guī)則在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)省略了字符集和校對(duì)規(guī)則的設(shè)置,MySQL將采用默認(rèn)字符集和默認(rèn)校對(duì)規(guī)則,默認(rèn)字符集是在哪里設(shè)置的?例4-1:創(chuàng)建名稱為mytest的數(shù)據(jù)庫(kù),字符集和排序規(guī)則為采用系統(tǒng)默認(rèn)。CREATEDATABASEmytest;MySQL數(shù)據(jù)庫(kù)管理說(shuō)明:創(chuàng)建數(shù)據(jù)庫(kù)后,會(huì)在存儲(chǔ)數(shù)據(jù)文件夾data下生成一個(gè)與數(shù)據(jù)庫(kù)同名的目錄,將來(lái)創(chuàng)建的表數(shù)據(jù)保存在此文件夾中。例:創(chuàng)建名稱為mytest的數(shù)據(jù)庫(kù),字符集為utf8mb4和排序規(guī)則為采用系統(tǒng)默認(rèn)。CREATEDATABASEmytest1charsetutf8mb4;查看數(shù)據(jù)庫(kù)查看所有的數(shù)據(jù)庫(kù)SHOWDATABASES;查看某個(gè)數(shù)據(jù)庫(kù)SHOWCREATEDATABASEmytest;MySQL數(shù)據(jù)庫(kù)管理使用數(shù)據(jù)庫(kù)MySQL服務(wù)器中可以同時(shí)存在多個(gè)數(shù)據(jù)庫(kù),在做數(shù)據(jù)處理前,需要切換到指定數(shù)據(jù)庫(kù)。語(yǔ)法如下:USE數(shù)據(jù)庫(kù)名;例:將mytest切換為當(dāng)前數(shù)據(jù)庫(kù)usemytest;MySQL數(shù)據(jù)庫(kù)管理修改數(shù)據(jù)庫(kù)更改數(shù)據(jù)庫(kù)的字符集和排序規(guī)則ALTERDATABASEdb_name[[DEFAULT]CHARACTERSETcharset_name][[DEFAULT]COLLATEcollation_name];MySQL數(shù)據(jù)庫(kù)管理【例4-2】修改已建數(shù)據(jù)庫(kù)mytest1,將其字符集改為utf8。ALTERDATABASEmytest1CHARACTERSETutf8;刪除數(shù)據(jù)庫(kù)系統(tǒng)收回已創(chuàng)建數(shù)據(jù)庫(kù)所占用的存儲(chǔ)空間,清除其在數(shù)據(jù)字典中的定義,數(shù)據(jù)庫(kù)中所包含數(shù)據(jù)也將被清除。DROPDATABASE[IFEXISTS]數(shù)據(jù)庫(kù)名;【例4-3】刪除mytest數(shù)據(jù)庫(kù),刪除前判斷數(shù)據(jù)庫(kù)是否存在。DROPDATABASEIFEXISTSmytest;MySQL數(shù)據(jù)庫(kù)管理數(shù)據(jù)類型:是指數(shù)據(jù)所代表信息的類型,不同的數(shù)據(jù)類型在使用范圍、存儲(chǔ)方式都不一樣。MySQL數(shù)據(jù)類型數(shù)字類型日期和時(shí)間類型字符型數(shù)據(jù)庫(kù)通用SET類型ENUM類型JSON數(shù)據(jù)類型MySQL使用(自學(xué))數(shù)字類型MySQL數(shù)據(jù)類型類型字節(jié)取值范圍(有符號(hào))取值范圍(無(wú)符號(hào))TINYINT1(-128,127)(0,255)SAMLLINT2(-32768,32767)(0,65535)MEDIUMINT3(-8388608,8388607)(0,16777215)INT4(-2147483648,2147483647)(0,4294967295)BIGINT8(-263,263-1)(0,264-1)DECIMAL[(P[,S])]如果P>S,為P+2字節(jié),否則為S+2字節(jié)和P、S的值有關(guān)和P、S的值有關(guān)關(guān)于數(shù)字類型的相關(guān)說(shuō)明如下:MySQL數(shù)據(jù)類型(1)在選擇數(shù)據(jù)類型時(shí),若一個(gè)數(shù)據(jù)將來(lái)可能參與數(shù)學(xué)計(jì)算,推薦使用整數(shù)或定點(diǎn)數(shù)類型:若只用來(lái)顯示,則推薦使用字符串類型。例如,商品庫(kù)存保存為整數(shù)類型;用戶的身份證、電話號(hào)碼可以保存為字符串型。(2)表的主鍵推薦使用整數(shù)類型,與字符串相比,整數(shù)類型的處理效率更高,查詢速度更快。(3)定義無(wú)符號(hào)數(shù)據(jù)類型,需要在數(shù)據(jù)類型右邊加UNSIGNED關(guān)鍵字,例如INTUNSIGNED;字符型MySQL數(shù)據(jù)類型數(shù)據(jù)類型說(shuō)明限制CHAR(n)固定長(zhǎng)度字符串0~255字符VARCHAR(n)可變長(zhǎng)度字符串與字符集相關(guān)TEXT長(zhǎng)文本數(shù)據(jù)0~28-1字符BLOB二進(jìn)制長(zhǎng)文本數(shù)據(jù)0~216-1字符關(guān)于字符類型的相關(guān)說(shuō)明如下:MySQL數(shù)據(jù)類型(1)CHAR(n)存儲(chǔ)存儲(chǔ)大小為n個(gè)字符。如果實(shí)際輸入不足n個(gè)字符,系統(tǒng)會(huì)自動(dòng)在后面添加空格來(lái)填滿。(2)VARCHAR(n)存儲(chǔ)大小為輸入數(shù)據(jù)的字符的實(shí)際長(zhǎng)度,其存儲(chǔ)的最大長(zhǎng)度取決于字符集,gbk和utf8對(duì)應(yīng)的最大值分別為32766和21488。(3)BLOB類型用于保存數(shù)據(jù)量較大的二進(jìn)制數(shù)據(jù),如圖片、PDF文檔等,BLOB與TEXT類型的主要區(qū)別為:BLOB類型根據(jù)二進(jìn)制數(shù)據(jù)進(jìn)行比較與排序,區(qū)分字符大小寫;TEXT類型根據(jù)字符進(jìn)行比較與排序,不區(qū)分字符大小寫。日期和時(shí)間類型MySQL數(shù)據(jù)類型類型字節(jié)取值范圍格式Y(jié)EAR11901到2155YYYYTIME3-838:59到838:59:59HH:MM:SSDATE31000-01-01到9999-12-31YYYY-MM-DDDATETIME81000-01-0100:00:00到9999-12-3123:59:59YYYY-MM-DDHH:MM:SSTIMESTAMP41970-01-0100:00:00到2038-01-1903:14:07YYYY-MM-DDHH:MM:SS關(guān)于日期時(shí)間類型的相關(guān)說(shuō)明如下:MySQL數(shù)據(jù)類型(1)在輸入YEAR類型的值時(shí),既可以使用四位字符和數(shù)字,也可以使用2位字符和數(shù)字。使用兩位字符表示為'00'~'99',其中,'00'~'69'會(huì)被轉(zhuǎn)化為2000~2069,'70'~'99'的值會(huì)被轉(zhuǎn)換為1970~1999。(2)日期型DATE的常量有多種表示方式:'20221025'、'2022-10-25'、'22-10-25'、'221025'都表示2022年10月25日。日期型的變量CURRENT_DATE返回系統(tǒng)當(dāng)前日期,日期函數(shù)NOW()返回系統(tǒng)當(dāng)前日期和日間。(3)時(shí)間型的常量以'HHMMSS'或HHMMSS格式表示,如輸入'121314'或121314都表示12:13:14(12小時(shí)13分14秒)。時(shí)間型的變量CURRENT_TIME返回系統(tǒng)當(dāng)前時(shí)間。創(chuàng)建數(shù)據(jù)表在已存在的數(shù)據(jù)庫(kù)中建立新表語(yǔ)法格式:CREATETABLE[IFNOTEXISTS]<表名>(<字段名>

<字段類型>[字段屬性]…[索引定義]);MySQL數(shù)據(jù)表管理【例4-5】在teaching_manage數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名稱為student的數(shù)據(jù)表,保存學(xué)生信息。

CREATETABLEIFNOTEXISTSstudent( snoCHAR(6)PRIMARYKEYCOMMENT'學(xué)生編號(hào)’, snameVARCHAR(20)NOTNULL, deptVARCHAR(20), sexCHAR(1), birthdayDATE, totalcreditDECIMAL(4,1)DEFAULT0, remarksVARCHAR(100) );MySQL數(shù)據(jù)表管理【例4-6】在teaching_manage數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名稱為course的數(shù)據(jù)表,保存課程信息。CREATETABLEcourse( cnoCHAR(3)PRIMARYKEY cnameVARCHAR(30)NOTNULLUNIQUE termTINYINT, ctimeTINYINTUNSIGNED, creditDECIMAL(3,1));MySQL數(shù)據(jù)表管理【例4-7】在teaching_manage數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名稱為score的數(shù)據(jù)表,保存成績(jī)信息。CREATETABLEscore( score_idINTUNSIGNEDAUTO_INCREMENTsnoCHAR(6), cnoCHAR(3), gradeDECIMAL(4,1)CHECK(grade>=0) PRIMARYKEY(score_id),CONSTRAINTfk_score_snoFOREIGNKEY(sno)REFERENCESstudent(sno),CONSTRAINTfk_score_cnoFOREIGNKEY(cno)REFERENCEScourse(cno));MySQL數(shù)據(jù)表管理【例4-8】在teaching_manage數(shù)據(jù)庫(kù)中利用score創(chuàng)建一個(gè)名稱為sc的數(shù)據(jù)表,保存成績(jī)信息。CREATETABLEscASSELECT*FROMscore;MySQL數(shù)據(jù)表管理注意:使用CREATETABLE+子查詢方式創(chuàng)建表,只復(fù)制表結(jié)構(gòu)和內(nèi)容,原表中的約束和索引通常不會(huì)被復(fù)制。數(shù)據(jù)庫(kù)的完整性約束完整性約束名定義關(guān)鍵字約束規(guī)則違約處理實(shí)體完整性約束primarykey主鍵不能取重復(fù)值和空值拒絕執(zhí)行參照完整性約束foreignkey外鍵的值依賴主鍵的值或?yàn)榭罩稻芙^/級(jí)聯(lián)刪除/級(jí)聯(lián)更新/置為空值用戶自定義完整性約束check滿足表達(dá)式的值拒絕執(zhí)行非空約束notnull不能取空值拒絕執(zhí)行唯一性約束unique不能有重復(fù)值拒絕執(zhí)行默認(rèn)值約束default不指定值時(shí)取默認(rèn)值拒絕執(zhí)行數(shù)據(jù)庫(kù)的完整性是指保證數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性、準(zhǔn)確性和有效性,通過(guò)定義防止不合語(yǔ)義的數(shù)據(jù)進(jìn)入數(shù)據(jù)庫(kù)。查看數(shù)據(jù)表1.查看庫(kù)中數(shù)據(jù)表SHOWTABLES[LIKE匹配模式];--查看當(dāng)前數(shù)據(jù)庫(kù)中所有數(shù)據(jù)表

SHOWTABLES;--查看當(dāng)前數(shù)據(jù)庫(kù)中以'sc'開頭的數(shù)據(jù)表SHOWTABLESLIKE'sc%';MySQL數(shù)據(jù)表管理2.查看數(shù)據(jù)表的詳細(xì)信息SHOWTABLESTATUS[FROM數(shù)據(jù)庫(kù)名][LIKE匹配模式];--查看當(dāng)前數(shù)據(jù)庫(kù)中所有數(shù)據(jù)表的詳細(xì)信息

SHOWTABLESTATUS;--查看teaching_manage數(shù)據(jù)庫(kù)中所有數(shù)據(jù)表的詳細(xì)信息SHOWTABLESTATUSFROMteaching_manage;MySQL數(shù)據(jù)表管理3.查看表結(jié)構(gòu)DESC<數(shù)據(jù)表名>[字段名];SHOWCOLUMNSFROM<數(shù)據(jù)表名>;--查看當(dāng)前數(shù)據(jù)庫(kù)中student表的結(jié)構(gòu)

DESCstudent;SHOWCOLUMNSFROMstudent;--查看當(dāng)前數(shù)據(jù)庫(kù)中student表中sname字段的結(jié)構(gòu)DESCstudentsname;MySQL數(shù)據(jù)表管理4.查看表的創(chuàng)建語(yǔ)句SHOWCREATETABLE<數(shù)據(jù)表名>;--查看當(dāng)前數(shù)據(jù)庫(kù)中student表的創(chuàng)建語(yǔ)句

SHOWCREATETABLEstudent;MySQL數(shù)據(jù)表管理修改數(shù)據(jù)表1.修改數(shù)據(jù)表名稱ALTERTABLE<原數(shù)據(jù)表名>RENAME[TO|AS]<新數(shù)據(jù)表名>;RENAMETABLE<原數(shù)據(jù)表名>TO<新數(shù)據(jù)表名>;--修改數(shù)據(jù)表student為student1ALTERTABLEstudentRENAMETOstudent1;--修改數(shù)據(jù)表student1為studentRENAMETABLEstudent1TOstudent;MySQL數(shù)據(jù)表管理2.修改數(shù)據(jù)表選項(xiàng)ALTERTABLE<數(shù)據(jù)表名><表選項(xiàng)>[=]<表選項(xiàng)>;--修改數(shù)據(jù)表student的字符集為utf8ALTERTABLEstudentCHARSET=utf8;MySQL數(shù)據(jù)表管理修改表結(jié)構(gòu)1.新增字段ALTERTABLE<數(shù)據(jù)表名>ADD[COLUMN]<字段名類型>[FIRST|AFTER字段名];--修改數(shù)據(jù)表student增加1個(gè)新列nativeplaceALTERTABLEstudentADDCOLUMNnativeplaceVARCHAR(50);--修改數(shù)據(jù)表student在性別(sex)增加1個(gè)新列nativeplaceALTERTABLEstudentADDnativeplaceVARCHAR(50)AFTERsex;MySQL數(shù)據(jù)表管理2.修改字段(1)修改字段名ALTERTABLE<數(shù)據(jù)表名>CHANGE<舊字段名><新字段名類型>--修改數(shù)據(jù)表student將nativeplace改名為nativeALTERTABLEstudentCHANGEnativeplacenativeVARCHAR(50);MySQL數(shù)據(jù)表管理(2)修改字段類型和位置ALTERTABLE<數(shù)據(jù)表名>MODIFY<字段名類型>[FIRST|AFTER字段名2]--修改數(shù)據(jù)表student將nativeplace類型改為VARCHAR(30)ALTERTABLEstudentMODIFYnativeplaceVARCHAR(30);--修改數(shù)據(jù)表student將nativeplace類型改為VARCHAR(20),并放在birthday之后ALTERTABLEstudentMODIFYnativeplaceVARCHAR(20)AFTERbirthday;MySQL數(shù)據(jù)表管理3.刪除字段ALTERTABLE<數(shù)據(jù)表名>DROP[COLUMN]<字段名>;--修改數(shù)據(jù)表student刪除列nativeplaceALTERTABLEstudentDROPnativeplace;MySQL數(shù)據(jù)表管理4.添加和刪除約束ALTERTABLE<數(shù)據(jù)表名>[ADDCONSTRAINT<完整性約束名><完整性約束>][DROPCONSTRAINT<完整性約束名>]--修改數(shù)據(jù)表score,在sno、cno兩字段上添加唯一約束uk_sno_cnoALTERTABLEscoreADDCONSTRAINTuk_sno_cnoUNIQUE(sno,cno);MySQL數(shù)據(jù)表管理刪除數(shù)據(jù)表DROPTABLE<數(shù)據(jù)表名>;--刪除學(xué)生表DROPTABLEstudent;表被刪除后,表在數(shù)據(jù)字典中的定義也被刪除,此表上建立的索引和視圖也被自動(dòng)刪除。MySQL數(shù)據(jù)表管理SQL提供了數(shù)據(jù)更新功能INSERT插入DELETE刪除UPDATE更新數(shù)據(jù)表的數(shù)據(jù)操作插入數(shù)據(jù)1.插入單個(gè)記錄語(yǔ)句格式

INSERT INTO<表名>[(<屬性列1>[,<屬性列2>…)] VALUES(<常量1>[,<常量2>]…)數(shù)據(jù)表的數(shù)據(jù)操作注意:

(1)INTO子句屬性列的順序可與表定義中的順序不一致

(2)VALUES子句提供的值必須與INTO子句匹配1.插入單個(gè)記錄--向student表中插入一條記錄,所有字段都有值INSERTINTOstudentVALUES('001242','張青','計(jì)算機(jī)','女','04-01-22',50,'三好生');--向student表中插入一條記錄,部分字段有值INSERTINTOstudent(sno,sname,dept)VALUES('001243','李四','計(jì)算機(jī)');數(shù)據(jù)表的數(shù)據(jù)操作2.插入多個(gè)記錄INSERT[INTO]<表名>[(字段名,…)][AS]子查詢--向stu表中一次插入多條記錄INSERTINTOstuSELECTsno,sname,sex,deptFROMstudent;數(shù)據(jù)表的數(shù)據(jù)操作修改數(shù)據(jù)UPDATE<表名>SET列名={表達(dá)式|(子查詢)}[,…][WHERE<條件表達(dá)式>];注意:

(1)如果不選WHERE子句,則表中所有的行全被更新;

(2)如果選擇了WHERE子句,則使WHERE中條件表達(dá)式為真的行被更新。數(shù)據(jù)表的數(shù)據(jù)操作【例4-9】把student表中的總學(xué)分加10。UPDATEstudentSETtotalcredit=totalcredit+10;【例4-10】把student表中姓名為“羅林琳”的學(xué)生的專業(yè)改為“計(jì)算機(jī)”,備注改為“三好學(xué)生”。UPDATEstudentSETdept='計(jì)算機(jī)',remarks='三好學(xué)生'WHEREsname='羅林琳';數(shù)據(jù)表的數(shù)據(jù)操作刪除數(shù)據(jù)DELETEFROM<表名>[WHERE<條件表達(dá)式>];WHERE子句指定要?jiǎng)h除的元組缺省表示要?jiǎng)h除表中的全部元組,表的定義仍在字典中數(shù)據(jù)表的數(shù)據(jù)操作TRUNCATETABLE語(yǔ)句截?cái)嗷颈?,從表中刪除所有的行,并且釋放該表所使用的存儲(chǔ)空間。在使用TRUNCATETABLE語(yǔ)句時(shí),不能回退已刪除的行?!纠?-13】將表STUDENT刪除,并釋放其存儲(chǔ)空間。TRUNCATETABLESTUDENT;數(shù)據(jù)表的數(shù)據(jù)操作為什么要定義自增型的字段?自增型字段(1)業(yè)務(wù)需求(2)空間效率:相同長(zhǎng)度的字符串和數(shù)值所能表示的范圍有較大差別。

如4個(gè)字節(jié)的數(shù)值型字符所表示的范圍為:‘0000’—‘9999’共10000種不同的值,而4個(gè)字節(jié)的int類型所能表示的范圍為:0——232-1共42億種不同的值。(3)時(shí)間效率:相同長(zhǎng)度的字符串和數(shù)值進(jìn)行比較時(shí),數(shù)值的比較速度要高于字符的比較速度。AUTO_INCREMENT類型AUTO_INCREMENT定義自增長(zhǎng)字段,查看參數(shù)下:SHOWVARIABLESLIKE'auto_increment%';自增型字段參數(shù)名稱默認(rèn)值取值范圍作用auto_increment_increment11~65535控制增量的幅度。auto_increment_offset11~65535增量開始的位置(開始的偏移量)。--設(shè)置A

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論