一、數(shù)據(jù)庫
1.數(shù)據(jù)庫的介紹
? ? 數(shù)據(jù)庫是存儲和管理數(shù)據(jù)的倉庫,數(shù)據(jù)按一定的格式進(jìn)行存儲,用戶可以對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行增加、刪除修改等操作。
2.數(shù)據(jù)庫的分類
(1)關(guān)系型數(shù)據(jù)庫
????????????是指采用了關(guān)系模型來組織數(shù)據(jù)的數(shù)據(jù)庫,簡單來說,關(guān)系模型指的就是二維表格模型,好比Excel文件中的表格,強(qiáng)調(diào)使用表格的方式存儲數(shù)據(jù)。

????????????常用的關(guān)系型數(shù)據(jù)庫有:

(2)非關(guān)系型數(shù)據(jù)庫
? ??????????非關(guān)系型數(shù)據(jù)庫,又被稱為NoSQL(Not Only sQL),意為不僅僅是SQL,對NoSQL最普遍的定義是"非關(guān)聯(lián)型的”﹐強(qiáng)調(diào)Key-value的方式存儲數(shù)據(jù)。
? ??????????常用的關(guān)系型數(shù)據(jù)庫有:

3.數(shù)據(jù)庫的特點(diǎn)

二、關(guān)系型數(shù)據(jù)庫管理系統(tǒng)
1.關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的介紹
????????數(shù)據(jù)庫管理系統(tǒng)〔英語全拼︰Relational Database Management System,簡稱RDBMS)是為管理關(guān)系型數(shù)據(jù)庫而設(shè)計(jì)的軟件系統(tǒng),如果想要使用關(guān)系型數(shù)據(jù)庫就需要安裝數(shù)據(jù)庫管理系統(tǒng),其實(shí)就是一個(gè)應(yīng)用軟件。

? ??????關(guān)系型數(shù)據(jù)庫管理系統(tǒng)可以分為:關(guān)系型數(shù)據(jù)庫服務(wù)端軟件、關(guān)系型數(shù)據(jù)庫客戶端軟件。
(1)關(guān)系型數(shù)據(jù)庫服務(wù)端軟件
? ??????主要負(fù)責(zé)管理不同的數(shù)據(jù)庫。而每個(gè)數(shù)據(jù)庫里面會有一系列數(shù)據(jù)文件,數(shù)據(jù)文件是用來存儲數(shù)據(jù)的,其實(shí)數(shù)據(jù)庫就是一系列數(shù)據(jù)文件的集合。
(2)關(guān)系型數(shù)據(jù)庫客戶端軟件
? ??????主要負(fù)責(zé)和關(guān)系型數(shù)據(jù)庫服務(wù)端軟件進(jìn)行通信,向服務(wù)端傳輸數(shù)據(jù)或者從服務(wù)端獲取數(shù)據(jù)。
2.SQL的介紹
????????SQL(Structured Query Language)是結(jié)構(gòu)化查詢語言,是一種用來操作RDBMS的數(shù)據(jù)庫的語言,也就是說通過SQL可以操作oracle,sql server,mysql,sqlite等關(guān)系型的數(shù)據(jù)庫,SQL語言不區(qū)分大小寫。

????????SQL的作用是實(shí)現(xiàn)數(shù)據(jù)庫客戶端和數(shù)據(jù)庫服務(wù)端之間的通信,SQL就是通信的橋梁。

????????數(shù)據(jù)的存儲過程:客戶端發(fā)送SQL語句到服務(wù)端,服務(wù)端處理sql語句并返回相應(yīng)的數(shù)據(jù)。
三、MySQL數(shù)據(jù)庫
1.MySQL數(shù)據(jù)庫的介紹
????????MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在WEB應(yīng)用方面,MySQL是最好的關(guān)系數(shù)據(jù)庫管理系統(tǒng)應(yīng)用軟件。它是由瑞典MySQL AB公司開發(fā),目前屬于Oracle旗下產(chǎn)品,MySQL是最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中的一個(gè)。
????????MySQL的特點(diǎn):
????????????1. MySQL是開源的,所以你不需要支付額外的費(fèi)用;
????????????2. MySQL支持大型的數(shù)據(jù)庫,可以處理擁有上千萬條記錄的大型數(shù)據(jù)庫;
????????????3. MySQL使用標(biāo)準(zhǔn)的SQL數(shù)據(jù)語言形式;
????????????4.MySQL可以安裝在不同的操作系統(tǒng),并且提供多種編程語言的操作接口,這些編程語言包括C、C++、Python 、Java 、Ruby等等。
2.MySQL數(shù)據(jù)庫的安裝
(1)關(guān)系型數(shù)據(jù)庫服務(wù)端軟件的安裝







? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?如果更改配置文件中的端口號,需要重啟。
(2)關(guān)系型數(shù)據(jù)庫客戶端軟件的安裝
????客戶端是程序員或者dba使用的軟件,通過socket方式與服務(wù)端程序通信。
????常用的MySOL數(shù)據(jù)庫客戶端軟件有:
????????1.圖形化界面客戶端Navicat
? ? ? ? ?2.命令行客戶端mysql
????圖形化界面客戶端Navicat的使用:
????????1.可以到Navicat官網(wǎng)下載
? ? ? ? ?2.將壓縮文件拷貝到Ubuntu虛擬機(jī)中,放到桌面上,解壓




四、數(shù)據(jù)類型和約束
1.數(shù)據(jù)類型
????數(shù)據(jù)類型是指在創(chuàng)建表的時(shí)候?yàn)楸碇凶侄沃付〝?shù)據(jù)類型;只有數(shù)據(jù)符合類型要求才能存儲起來,使用數(shù)據(jù)類型的原則是:夠用就行,盡量使用取值范圍小的,而不用大的,這樣可以更多的節(jié)省存儲空間。


2.數(shù)據(jù)約束
????約束是指數(shù)據(jù)在數(shù)據(jù)類型限定的基礎(chǔ)上額外培加的要象。

3.數(shù)據(jù)類型附錄表



? ? ? ? 數(shù)據(jù)類型和約束的作用:在表中為了更加準(zhǔn)確地存儲數(shù)據(jù),保證數(shù)據(jù)的正確有效。
五、圖形化客戶端Navicat
六、命令行客戶端MySQL的使用
七、as和distinct關(guān)鍵字
八、where條件查詢
九、排序
十、分頁查詢
主要負(fù)責(zé)和關(guān)系型數(shù)據(jù)庫服務(wù)端軟件進(jìn)行通信,向服務(wù)端傳輸數(shù)據(jù)或者從服務(wù)端獲取數(shù)據(jù).