MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)_第1頁(yè)
MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)_第2頁(yè)
MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)_第3頁(yè)
MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)_第4頁(yè)
MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩126頁(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)介

第3章MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)

主要內(nèi)容:

MySQL數(shù)據(jù)庫(kù)基本知識(shí)

數(shù)據(jù)庫(kù)模型概念

數(shù)據(jù)庫(kù)服務(wù)器管理用戶的方法

MySQL數(shù)據(jù)庫(kù)、數(shù)據(jù)表維護(hù)管理方法

phpMyAdmin軟件的使用方法

3.1MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)概述

3.1.1MySQL數(shù)據(jù)庫(kù)的術(shù)語(yǔ)

1.MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)的特點(diǎn)

(1)采用客戶機(jī)/服務(wù)器模式,支持多用戶、多線程、

互聯(lián)網(wǎng)操作,可以實(shí)時(shí)處理和共享數(shù)據(jù)。

(2)MySQL軟件,由數(shù)據(jù)庫(kù)管理員創(chuàng)建用戶,包括設(shè)

置用戶名、密碼、與授權(quán)。

(3)數(shù)據(jù)類型豐富,字符、數(shù)值、日期、多媒體

(4)占用資源少、運(yùn)行效率高

(5)MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)軟件免費(fèi)

文件/服務(wù)器(File/Server)模式

F/S

單價(jià)=10

客戶機(jī)數(shù)量=4

將單價(jià)、數(shù)

金額=40

量、金額保

單價(jià)=10

存在訂單數(shù)

數(shù)量=4

據(jù)表

金額=單價(jià)x數(shù)量=10x4=40

客戶機(jī)/服務(wù)器(Client/Server)模式

C/S

單價(jià)=10

數(shù)量=4

客戶機(jī)

單價(jià)=10

單價(jià)=10數(shù)量=4

數(shù)量=4金額=單價(jià)x數(shù)量=10x4=40

保存在數(shù)據(jù)庫(kù)文件中

3.1.1MySQL數(shù)據(jù)庫(kù)的術(shù)語(yǔ)

2.MySQL操作模式

(1)命令操作界面

打開(kāi)命令操作界面,單擊“開(kāi)始”-“運(yùn)行”

輸入“mysql-uroot-p123456”,顯示

mysql>

(2)圖形操作界面

打開(kāi)瀏覽器IE

在地址欄輸入http:〃nbxD/DhDmyadmin講入

MySQL圖形操作界面

3.數(shù)據(jù)庫(kù)服務(wù)器

安裝有數(shù)據(jù)庫(kù)管理系統(tǒng)的計(jì)算機(jī)服務(wù)器。

管理方式:支持客戶機(jī)/服務(wù)器(C/S)

主要職責(zé):管理數(shù)據(jù)庫(kù)用戶、維護(hù)數(shù)據(jù)庫(kù)和

數(shù)據(jù)表文件

4.數(shù)據(jù)庫(kù)用戶

被授權(quán)允許使用數(shù)據(jù)庫(kù)、數(shù)據(jù)表的人員。

?數(shù)據(jù)庫(kù)管理員:id=root,pwd=123456

職責(zé),維護(hù)用戶賬號(hào)、維護(hù)數(shù)據(jù)庫(kù)和數(shù)據(jù)表

?普通用戶:由數(shù)據(jù)庫(kù)管理員創(chuàng)建用戶賬號(hào),

并授權(quán)維護(hù)數(shù)據(jù)庫(kù),數(shù)據(jù)表。

5,數(shù)據(jù)模型

是計(jì)算機(jī)組織數(shù)據(jù)需要遵守的規(guī)范。

層次型、網(wǎng)狀型和關(guān)系型。

一個(gè)關(guān)系對(duì)應(yīng)一個(gè)二維的數(shù)據(jù)表(文件)。

關(guān)系數(shù)據(jù)庫(kù)則是管理數(shù)據(jù)表的文件。

MySQL數(shù)據(jù)模型

由數(shù)據(jù)庫(kù)文件與數(shù)據(jù)表文件構(gòu)成。

數(shù)據(jù)庫(kù)文件:用于管理數(shù)據(jù)表構(gòu)成信息的文件,

數(shù)據(jù)庫(kù)文件名唯一(不重復(fù))。

數(shù)據(jù)表文件:用于管理數(shù)據(jù)記錄的文件,數(shù)據(jù)

表文件名唯一(不重復(fù))。數(shù)據(jù)表由,數(shù)據(jù)

表文件名+數(shù)據(jù)表結(jié)構(gòu)+數(shù)據(jù)記錄構(gòu)成。

關(guān)系數(shù)據(jù)庫(kù)的基本概念

A?表:表名、列名和數(shù)據(jù)行組成。

4?歹Ij:也稱作字段,域,屬性。

>?行:也稱記錄。

?值:表中行與列的交匯處,即存儲(chǔ)的數(shù)據(jù)。

?舄與列名的命名規(guī)則:表名在數(shù)據(jù)庫(kù)中唯

一,冽名在表中唯一。

學(xué)生基會(huì)情況表

學(xué)號(hào)出生日期專業(yè)

052107劉金82-10-091001

052108王華82-11-211002

上一張下一張

表和表之間的關(guān)系

一對(duì)多的關(guān)系:兩個(gè)表之間的關(guān)系一對(duì)多

學(xué)生基本情況表

學(xué)號(hào)姓名出生日期專業(yè)

052107劉華82-10-091001

052108王華82-11-211001

專業(yè)代碼

專業(yè)代碼專業(yè)名稱

1001計(jì)算機(jī)應(yīng)用

上一張下一張

表和表之間的關(guān)系

一對(duì)一的關(guān)系:兩個(gè)表之間的關(guān)系一對(duì)一。

學(xué)生基本情況表

學(xué)號(hào)姓名出生日期專業(yè)

052107劉華82-10-091001

052108王華82-11-211001

學(xué)生成績(jī)單表

學(xué)號(hào)會(huì)計(jì)計(jì)算機(jī)英語(yǔ)

052107899194

052108877987

上一張下一張

6,數(shù)據(jù)類型

指數(shù)據(jù)分類類別:

字符型(姓名,職稱,地址)

數(shù)值型(工資,成績(jī),數(shù)量)可以進(jìn)行運(yùn)算

日期型(出生日期,畢業(yè)時(shí)間)

邏輯型(只有兩種狀態(tài),邏輯真和邏輯假)

7.MySQL的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)

MySQL數(shù)據(jù)庫(kù)管理系統(tǒng)保存在

“C:/AppServ/MySQL”

系統(tǒng)數(shù)據(jù)庫(kù)MySQL,用戶創(chuàng)建的應(yīng)用數(shù)據(jù)庫(kù)

bookstore保存在

“C:/AppServ/MySQL/Data”

3.1.2案例說(shuō)明

網(wǎng)絡(luò)圖書(shū)銷售信息管理系統(tǒng)

創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)文件名:bookstore

在數(shù)據(jù)庫(kù)中創(chuàng)建三張數(shù)據(jù)表,數(shù)據(jù)表文件名

分別是book(圖書(shū)情況表)、member(會(huì)員

情況表)、sell(銷售情況表)

32網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的數(shù)據(jù)模型

3.2.1數(shù)據(jù)類型

指數(shù)據(jù)分類類別和型式。在一次運(yùn)算過(guò)程中運(yùn)算

對(duì)象的類型必須一致(相同)。

常見(jiàn)的類型:

字符型,字母、漢字、數(shù)字符號(hào)、特殊符號(hào)

數(shù)值型,整數(shù)和小數(shù)

日期時(shí)間型,具有特定格式的數(shù)據(jù)

邏輯型(布爾型),邏輯真True,邏輯假False

1.字符串類型的數(shù)據(jù)

(1)char:定長(zhǎng)字符串類型,范圍0-255

例:namechar(8),固定8個(gè)字節(jié)。

name="劉華”實(shí)際占用8字節(jié)“劉華

(2)varchar:變長(zhǎng)字符串類型,范圍0-255

例:namevarchar(8),不超過(guò)8個(gè)字節(jié)。

name="劉華”實(shí)際占用5字節(jié)“劉華二

(3)text:變長(zhǎng)文本類型的字符數(shù)據(jù)

范圍0-65535

(4)blob:變長(zhǎng)(二進(jìn)制形式)長(zhǎng)文本數(shù)據(jù)

范圍0?65535

2,數(shù)值類型的數(shù)據(jù)

(1)int:整型數(shù)據(jù),范圍4字節(jié),

.2147483648-+2147483647

(2)float:浮點(diǎn)型數(shù)據(jù),包括整數(shù)和小數(shù)

3.日期時(shí)間類型數(shù)據(jù)

按照特定的日期格式和時(shí)間格式表示數(shù)據(jù)

(1)date:表示日期,格式y(tǒng)yyy-mm-dd

(2)time:表示時(shí)間,格式hh:mm:ss

(3)datetime:表示日期時(shí)間,

格式y(tǒng)yyy-mm-sshh:mm:ss

3.2網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的數(shù)據(jù)模型

322數(shù)據(jù)庫(kù)

是相關(guān)數(shù)據(jù)表的集合。數(shù)據(jù)庫(kù)文件名唯一。

3.2.3數(shù)據(jù)表

是相關(guān)數(shù)據(jù)記錄的集合。數(shù)據(jù)表文件名唯一。

一個(gè)數(shù)據(jù)表:表文件名+數(shù)據(jù)表結(jié)構(gòu)+數(shù)據(jù)記錄。

3.3MySQL服務(wù)器用戶管理

每一個(gè)使用MySQL數(shù)據(jù)庫(kù)的用戶必須擁有一

個(gè)合法的賬號(hào)(包括用戶名,用戶密碼)

和相應(yīng)的權(quán)限。

MySQL數(shù)據(jù)庫(kù)管理員賬號(hào),用戶名為root,

用戶密碼為123456(在安裝過(guò)程中設(shè)置的

密碼,可以隨時(shí)修改)。

普通用戶的賬號(hào)和權(quán)限必須由數(shù)據(jù)庫(kù)管理員

創(chuàng)建和授權(quán)。

3.3.[登錄MySQU艮務(wù)器

使用數(shù)據(jù)庫(kù)管理員的賬號(hào)登錄,用戶名root,用戶

密碼123456。

方法一,使用命令行方式登錄

單擊“開(kāi)始”-“所有程序”-"AppServ”-

“MySQLcommandlineclient”

輸入密碼123456。出現(xiàn)mysql>登錄成功

故lySQLCouandLineClient

Enterpassword:xxxxxx

WelcometotheMySQLmonitor.Commandsenduith;or\g.

YourMySQLconnectionidis8

Serueruersion:5.0.45-connunity-nt-logMySQLCommunityEdition<GPL>

llype'help;'or'\h'forheIp.Type1\c*toclearthebuffer.

mysqlkMysql>提示符

3.3.[登錄MySQU艮務(wù)器

方法二使用“運(yùn)行”登錄MySQL服務(wù)器。

單擊“開(kāi)始”-“運(yùn)行”

命令格式:mysql-uv用戶名〉?pv用戶密碼〉

MySQL命令格式

命令關(guān)鍵詞V選項(xiàng)>;分號(hào)表示命令結(jié)束并提交

1)打開(kāi)數(shù)據(jù)庫(kù)

Usev數(shù)據(jù)庫(kù)名〉;

例:usemysql;打開(kāi)mysql數(shù)據(jù)庫(kù)

2)增加新用戶的賬號(hào)到mysql數(shù)據(jù)庫(kù)user表

Insertinto數(shù)據(jù)表名(主機(jī)名,用戶名,用戶密碼,

權(quán)限1,權(quán)限2,…)values(主機(jī)名值,用戶名值,

用戶密碼值,權(quán)限1值,權(quán)限2值,…);

3)激活數(shù)據(jù)

Flushprivileges;

332MySQL服務(wù)器的用戶管理

MySQL服務(wù)器中內(nèi)置系統(tǒng)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)名

為mysqL數(shù)據(jù)庫(kù)中內(nèi)置數(shù)據(jù)表,數(shù)據(jù)表名

為user。

只能由數(shù)據(jù)庫(kù)管理員(root,123456)對(duì)用

戶賬號(hào)進(jìn)行維護(hù),增加新用戶、修改用戶

密碼、刪除用戶賬號(hào)、用戶賬號(hào)授權(quán)。

使用root、123456登錄mysql數(shù)據(jù)庫(kù)管理系

統(tǒng)。進(jìn)入mysql>提示符

User數(shù)據(jù)表中保存所有授權(quán)用戶(允許使用mysql數(shù)據(jù)庫(kù)的

用戶)的用戶名、用戶密碼以及用戶權(quán)限表1/2。

序號(hào)權(quán)限參數(shù)說(shuō)明

1Select_priv顯刁、記錄權(quán)限

2lnsert_priv插入記錄權(quán)限

3Update-priv更新記錄權(quán)限

4Delete_priv刪除記錄權(quán)限

5Create_priv建立數(shù)據(jù)庫(kù)、數(shù)據(jù)表權(quán)限

6Drop_priv刪除表文件的權(quán)限

7lndex_priv創(chuàng)建索引字段權(quán)限

8Alter_priv修改表結(jié)構(gòu)權(quán)限

User數(shù)據(jù)表中保存所有授權(quán)用戶(允許使用mysql數(shù)據(jù)庫(kù)的

用戶)的用戶名、用戶密碼以及用戶權(quán)限表2/2。

序號(hào)權(quán)限參數(shù)說(shuō)明

9File_priv讀寫(xiě)服務(wù)器上文件的權(quán)限

10Grant_priv授權(quán)其他用戶權(quán)限

11References_priv維護(hù)外鍵權(quán)限

12Show_db_priv瀏覽服務(wù)器上數(shù)據(jù)庫(kù)權(quán)限

13Lock_tables_priv創(chuàng)建刪除表鎖權(quán)限

1.增加新的用戶

創(chuàng)建新的用戶賬號(hào)

包括用戶名、用戶密碼、用戶權(quán)限。

打開(kāi)mysql數(shù)據(jù)庫(kù)

插入新的用戶賬號(hào)數(shù)據(jù)到user數(shù)據(jù)表

激活新創(chuàng)建的用戶賬號(hào)

命令格式:

mysql>usemysql;

mysql>insertintomysql.user(主機(jī)名稱,用戶名稱,

用戶密碼,權(quán)限1,權(quán)限2,…)

valuesfhostuseGpasswordjSelec^priv,-);

mysql>flushprivileges;

增加用戶例題bookuser/11111

用六名bookuser,用戶密碼111111,擁有select,insert,

update,delete’create,drop權(quán)限。

mysql>usemysql;

mysql>insertinto

mysql.user(host9user9password9select_p

riv,insert_priv,update_priv,delete_privi,cr

eate_priv,drop_priv)values

(1ocalhost7bookuser\passwordC111111

,)y,y,y,y,y,y);

mysql>flushprivileges;

增力口用戶例題booktest,333333

用戶名booktest,用戶密碼333333,擁有select,insert,

update,delete,create,drop,index,alter^Z^o

mysql>usemysql;

mysql>insertinto

mysql.user(host,user,password,select_p

riv,insert_priv,update_priv,delete_privi,cr

eate_priv,drop_priv,index_priv,alter_priv)

values

(1ocalhost7booktest\password("333333,

mysql>flushprivileges;

2.修改用戶權(quán)限

命令格式:

updatev表名〉set[權(quán)限參數(shù)名稱=權(quán)限值]

where〈條件〉;

mysql>usemysql;

mysqOupdatemysql.userset權(quán)限名1=權(quán)

限值1,權(quán)限名2=權(quán)限值2wherev條件〉;

mysql>flushprivileges;

修改權(quán)限例題

修改bookuser用戶的index_priv和alter_priv

如丁一一

mysql>usemysql;

mysqOupdatemysql.user

setindex_priv=y,alter_priv='y,

whereuser="bookuser\

mysql>flushprivileges;

修改用戶密碼

命令格式:

updatev表名〉

setpassword=password(新密碼)

wherev條件〉;

mysql>usemysql;

mysqOupdatemysql.userset

password=password(新密碼)wherev條

彳?!?;

mysqOflushprivileges;

修改用戶密碼例題

修改bookuser用戶的密碼111111為222222

mysql>usemysql;

mysqOupdatemysql.user

setpassword=password(u222222,J)

whereuser=^bookuser,J;

mysql>flushprivileges;

3,刪除用戶賬號(hào)

命令格式:

deletefromv表名>wherev條件〉

mysql>usemysql;

mysqOdeletefrommysql.user

wherev條件〉;

mysql>flushprivileges;

刪除用戶賬號(hào)例題

刪除booktest用戶賬號(hào)

mysql>usemysql;

mysqOdeletefrommysql.user

whereuser="bookuser\

mysql>flushprivileges;

3.4MySQL數(shù)據(jù)管理

?維護(hù)數(shù)據(jù)庫(kù):顯示數(shù)據(jù)庫(kù),建立數(shù)據(jù)庫(kù),

刪除數(shù)據(jù)庫(kù),打開(kāi)數(shù)據(jù)庫(kù)。

?維護(hù)數(shù)據(jù)表:建立數(shù)據(jù)表,顯示數(shù)據(jù)表文

件名,顯示數(shù)據(jù)表結(jié)構(gòu),修改數(shù)據(jù)表結(jié)構(gòu),

刪除數(shù)據(jù)表文件,更換數(shù)據(jù)表名。

?維護(hù)數(shù)據(jù)表的數(shù)據(jù)(記錄):增加記錄,

刪除記錄,修改記錄,選取記錄

341維護(hù)MySQL數(shù)據(jù)庫(kù)

1.顯示數(shù)據(jù)庫(kù)(MySQL數(shù)據(jù)庫(kù)是系統(tǒng)數(shù)據(jù)庫(kù))

顯示當(dāng)前服務(wù)器中所有的數(shù)據(jù)庫(kù)。

命令格式:showdatabases;

341維護(hù)MySQL數(shù)據(jù)庫(kù)

2.建立數(shù)據(jù)庫(kù)

在當(dāng)前服務(wù)器中創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù)。

命令格式:createdatabasev數(shù)據(jù)庫(kù)文件名〉;

例題:創(chuàng)建一個(gè)叫dbtest的數(shù)據(jù)庫(kù)。

mysql>showdatabases;查詢存在的數(shù)據(jù)庫(kù)

mysql>createdatabasedbtest;

dbtest數(shù)據(jù)庫(kù)的位置。

C:/AppServ/MySQL/data/dbtest

mysql>showdatabases;查詢存在的數(shù)據(jù)庫(kù)

341維護(hù)MySQL數(shù)據(jù)庫(kù)

3,刪除數(shù)據(jù)庫(kù)

刪除當(dāng)前服務(wù)器中的一個(gè)數(shù)據(jù)庫(kù)。

命令格式:dropdatabasev數(shù)據(jù)庫(kù)文件名〉;

例題:創(chuàng)建一個(gè)叫dbtest的數(shù)據(jù)庫(kù)。

mysql>showdatabases;查詢存在的數(shù)據(jù)庫(kù)

mysql>dropdatabasedbtest;

mysql>showdatabases;查詢存在的數(shù)據(jù)庫(kù)

341維護(hù)MySQL數(shù)據(jù)庫(kù)

4■打開(kāi)數(shù)據(jù)庫(kù)

打開(kāi)當(dāng)前服務(wù)器中的一個(gè)數(shù)據(jù)庫(kù)。

命令格式:use〈數(shù)據(jù)庫(kù)文件名〉;

例題:打開(kāi)bookstore數(shù)據(jù)庫(kù)。

mysql>usebookstore;

c:\lySQLComMandLineClienlnIX

342維護(hù)MySQL數(shù)據(jù)表

數(shù)據(jù)表=數(shù)據(jù)表名、數(shù)據(jù)表結(jié)構(gòu)、數(shù)據(jù)記錄。

指定數(shù)據(jù)表名

定義數(shù)據(jù)表結(jié)構(gòu)(字段名、字段類型、寬度、

輔助項(xiàng))

數(shù)據(jù)表維護(hù)工作:

1.創(chuàng)建一個(gè)新的數(shù)據(jù)表、2.顯示存在的數(shù)據(jù)表、

3,顯示一個(gè)數(shù)據(jù)表的結(jié)構(gòu)、4.修改數(shù)據(jù)表結(jié)

構(gòu)、5,刪除數(shù)據(jù)表、6,更換數(shù)據(jù)表名。

342維護(hù)MySQL數(shù)據(jù)表

1.建立新的數(shù)據(jù)表,定義表文件名、字段名、

字段類型、字段寬度、設(shè)置字段屬性。

命令格式:

createtable〈數(shù)據(jù)表名>(<字段1定義),

〈字段2定義,,…〈字段n定義〉);

字段i定義內(nèi)容:字段名,類型,寬度,非空

修飾符,default修飾符,autojncrement

修飾符。一

create字段約束

NULL和NOTNULL修飾符:NULL允許該字段

為空值,NOTNULL該字段不允許為空值。

DEFAULT修飾符:在插入記錄時(shí)自動(dòng)插入一個(gè)默

認(rèn)值。

AUTO」NCREMENT修飾符:只適用于INT類型

字段,是步長(zhǎng)為一的自動(dòng)增量修飾。

例題:建立數(shù)據(jù)表(members)

數(shù)據(jù)表名:members

字段名字段類型寬度說(shuō)明

身份證號(hào)char1字符非NULL

會(huì)員姓名char10字符非NULL

會(huì)員密碼char6字符非NULL

聯(lián)系電話varchar20字符非NULL

注冊(cè)時(shí)間datetime日期時(shí)間非NULL

創(chuàng)建數(shù)據(jù)表方法一:命令行方法

單擊“開(kāi)始”-“所有程序”-"AppServ”-

“MySQLCommandLineClient”

mysql>usebookstore;y錄色括號(hào)一對(duì)

mysql>createtablemember^

->身份證號(hào)char(18)

->會(huì)員密碼char(6),

。會(huì)員姓名char(10),逗號(hào)不能省

->聯(lián)系電話varchar(20),

。注冊(cè)時(shí)間datetime;

■〉)日匕處沒(méi)有逗號(hào)

分號(hào)提交命令

創(chuàng)建數(shù)據(jù)表方法二:批處理方法

將創(chuàng)建數(shù)據(jù)表的命令寫(xiě)入一個(gè)文本文件,擴(kuò)展名為sql。

?創(chuàng)建批處理文件,用記事本編輯一個(gè)mysql批處理文件。

文件名為:mysql_create_members.sql

?運(yùn)行批處理文件,在mysql命令行窗口輸入按以下格式輸入命令Source

mysql>sourcec:\appserv\mysql\data\mysql_create_members.sql

再編輯一個(gè)批處理文件

c:\AppServ\MySQL\data\bookstore_create_tables.scl

該文件創(chuàng)建book、member、sell三不數(shù)據(jù)裝,數(shù)據(jù)表結(jié)構(gòu)見(jiàn)p33-p34

創(chuàng)建數(shù)據(jù)表修飾符的使用

創(chuàng)建testmbs數(shù)據(jù)表使用修飾符。

createtestmbs(

idint(6)notnullautojncrement,

姓名char(8)notnull,

性別char(2)notnulldefault'男',

出生日期datenotnulldefault"1998-05-1

索引

索引的作用:提高搜索速度,減少查詢時(shí)間。

創(chuàng)建索引(鍵)方式:

方式一createtable創(chuàng)建索引

createtablev數(shù)據(jù)表》(字段1定義,…字段n定義,

index[索引名稱](字段字段2,???]),

unique[索引名稱](字段1[,字段2,…]));

方式二create[unique]index添力口索弓I

createindex[索引名]on數(shù)據(jù)表(字段1[,字段2]);

createuniqueindex[索引名]on數(shù)據(jù)表(字段字

段2]);

=unique選項(xiàng)不重

createtable方式索引例題

createtablestudent(

學(xué)號(hào)char(8)notnull,

姓名char(12)notnull,

性別char(2)default,男',

出生年月datenotnulldefault978-01-08\

專業(yè)char(6)notnulldefault'100001',

indexstudsp(專業(yè)),

uniquestudid(學(xué)號(hào)));

createindex方式索引例題

createtablestudent(

學(xué)號(hào)char(8)notnull,

姓名char(12)notnull,

性別char(2)notnulldefault,男',

出生年月datenotnulldefault'1978-01-08\

專業(yè)char(6)notnulldefault'100001');

createindexstudsponstudent(專業(yè));

createuniqueindexstudidonstudent(學(xué)號(hào));

主鍵

主鍵字段值(鍵值)非空且不重,可以多字段

組合主鍵,一個(gè)數(shù)據(jù)表中主鍵只能有一個(gè)。

創(chuàng)建主鍵方式:

方式一createtable創(chuàng)建索引

createtable〈數(shù)據(jù)表〉(字段1定義,…字段n定義,

primarykey[索弓I名球](字段字段2,???]));

添加主鍵方式:

方式二altertable添加索引

altertable數(shù)據(jù)表addprimarykey[索引名](字段

1L字段2]);

createtable方式創(chuàng)建主鍵例題

createtablestudent(

學(xué)號(hào)char(8)notnull,

姓名char(12)notnull,

性別char(2)notnulldefault'男',

出生年月datenotnulldefault'1978-01-08\

專業(yè)char(6)notnulldefault'100001\

primarykeystudxh(學(xué)號(hào)));

altertable方式添加主鍵例題

createtablestudent(

學(xué)號(hào)char(8)notnull,

姓名char(12)notnull,

性別char(2)notnulldefault'男',

出生年月datenotnulldefault'1978-01-08\

專業(yè)char(6)notnulldefault'10000V);

altertablestudentaddprimarykeystudxh

(學(xué)號(hào));

外鍵

通過(guò)外鍵在兩個(gè)數(shù)據(jù)表中建立關(guān)聯(lián),可以是

一對(duì)一關(guān)聯(lián),也可以是一對(duì)多關(guān)聯(lián)。該關(guān)

聯(lián)在關(guān)聯(lián)表中的數(shù)據(jù)構(gòu)成參照完整性。

定義外鍵格式:

1.使用index索引項(xiàng)名(索引字段)創(chuàng)建索弓I。

2,使用foreignkey(索引字段)references主

鍵數(shù)據(jù)表名(主鍵索引字段)。

createtable方式創(chuàng)建外鍵例題

createtabletitle(

職稱代碼char(4)notnullprimarykey,

職稱名稱varchar(20)notnull)type=innodb;

createtablemembers(

身份證號(hào)char(18)notnull,

性別char(2)notnull,

出生日期datenotnull,

工作單位varchar(24)notnull,

單位地址varchar(24)notnull,

郵政編碼char(6)notnull,

職稱代碼char(4)notnull,

primarykey(身份證號(hào)),

index(職稱代碼),

foreignkey(職稱代碼)referencestitle(職稱代碼))type=innodb;

altertable方式添加外鍵例題

createtabletitle(

職稱代碼char(4)notnullprimarykey,

職稱名稱varchar(20)notnull)type=innodb;

createtablemembers(

身份證號(hào)char(18)notnul

性別char(2)notnul

出生日期datenotnul

工作單位varchar(24)notnul

單位地址varchar(24)notnul

郵政編碼char(6)notnul

職稱代碼char(4)notnul

primarykey(身份證號(hào)),

index(職稱代碼))type=innodb;

altertable數(shù)據(jù)表名addforeignkey(職稱代碼)referencestitle(BR

稱代碼)ondeletecascadeonupdatecascade;

刪除索引,主鍵,外鍵

?刪除索引命令格式:

dropindex索引名稱on數(shù)據(jù)表名;

?刪除主鍵命令格式:

altertable數(shù)據(jù)表名dropprimarykey;

?刪除外鍵命令格式:

altertable數(shù)據(jù)表名dropforeignkey外鍵標(biāo)

識(shí);一般情況通過(guò)刪除表實(shí)現(xiàn)刪除外鍵

(外鍵標(biāo)識(shí)可以使用“showcreatetable數(shù)

據(jù)表名”得到,信息中的constraint選項(xiàng)值)

刪除索引、主鍵、外鍵例題

createtabletitle(

職稱代碼char(4)notnullprimarykey,

職稱名稱varchar(20)notnull)type=innodb;

createtablemembers(

身份證號(hào)char(18)notnull,

性別char(2)notnull,

出生日期datenotnull,

工作單位varchar(24)notnull,

單位地址varchar(24)notnull,

郵政編碼char(6)notnull,

職稱代碼char(4)notnull,

primarykey(身份證號(hào)),

index(職稱代碼),

foreignkey(職稱代碼)referencestitle(職稱代碼))type=innodb;

刪除索引,主鍵,外鍵例題

?刪除索引:

dropindex索引名稱on數(shù)據(jù)表名;

dropindex職稱代碼onmembers;

刪除索引,主鍵,外鍵例題

刪除主鍵:

altertable數(shù)據(jù)表名dropprimarykey;

altertablemembersdropprimarykey;

刪除索引,主鍵,外鍵例題

刪除外鍵:

altertable數(shù)據(jù)表名dropforeignkey外鍵標(biāo)識(shí);

altertablemembersdropforeignkey

members_ibfk_1;

外鍵標(biāo)識(shí)使用showcreatetablemembers;的

constraint得至Umembersibfk1

外鍵參照完整性

外鍵表外鍵與參照表主鍵建立數(shù)據(jù)關(guān)聯(lián),該

關(guān)聯(lián)構(gòu)成表間約束(參照完整性)。

夕卜鍵定義中的ondeletecascade約束、on

updatecascade約束。

ondeletecascade約束關(guān)聯(lián)表同步刪除。

onupdatecascade約束關(guān)聯(lián)表同步更新。

外鍵關(guān)聯(lián)例題

createtablezctb(

zccodechar(4)primarykey,

zcnamechar(10))type=innodb;

createtablezginfo(

zgidchar(8)primarykey,

zgnamechar(10),

zgzcchar(4),

index(zgzc),

foreignkey(zgzc)referenceszctb(zccode)

ondeletecascadeonupdatecascade)

type=innodb;

insertintozctb(zccode.zcname)values

(0001?工程師,);

insertintozginfo(zgid9zgname9zgzc)

values('100000017張華70001');

select

updatezctbsetzccode='0002Jwhere

zccode="0001J;

select

deletefromzctbwherezccode='0002J;

select

342維護(hù)MySQL數(shù)據(jù)表

2.顯示數(shù)據(jù)表名。

命令格式:

showtables;

342維護(hù)MySQL數(shù)據(jù)表

2.例題:顯示bookstore數(shù)據(jù)庫(kù)中的數(shù)據(jù)表。

mysqOshowtables;

342維護(hù)MySQL數(shù)據(jù)表

3.顯示數(shù)據(jù)表結(jié)構(gòu)。

命令格式:

describev數(shù)據(jù)表文件名〉;

342維護(hù)MySQL數(shù)據(jù)表

3.例題:顯示members數(shù)據(jù)表的結(jié)構(gòu)。

mysql>describemembers;

CABySQLCOBBandLineClient■-回*1

iysql>describenenbers;s

r-.....................一、rrr-..................rr-

!Type:Null1!Key1!Default1!Extra!

i_________________________________________■____________________a_________________a_____________________________a_______________________a

r....................................."................................rr........................rr…rr"■

號(hào)

char<18>:NOPRI

別char<2>:YESNULL

生date!NO

工uarchar<24>!NO

擔(dān)

郵uarchar<24>!NO

職char<6>!NOMUL

char<4>:NOMUL

k_________________________________________a____________________i1_________________11_____________________________1i_____________________

7roi?sinset<0.01sec)

ysql)Ld

342維護(hù)MySQL數(shù)據(jù)表

4.修改數(shù)據(jù)表結(jié)構(gòu)。

修改、增加、刪除字段名稱、字段類型

⑴修改字段命令格式:

altertable數(shù)據(jù)表名change原字段名新字段名;

①修改字段名例題:

altertablememberschange性另U會(huì)員性另Uchar(2);

②修改字段類型例題:

altertablememberschange工作單位工作單位

char(20);

342維護(hù)MySQL數(shù)據(jù)表

4.修改數(shù)據(jù)表結(jié)構(gòu)。

修改、增加、刪除字段名稱、字段類型

⑵增加字段命令格式:

altertable數(shù)據(jù)表名add字段名字段類型;

①增加字段例題:

altertablemembersadd單位電話char(12);

342維護(hù)MySQL數(shù)據(jù)表

4.修改數(shù)據(jù)表結(jié)構(gòu)。

修改、增加、刪除字段名稱、字段類型

⑶刪除字段命令格式:

altertable數(shù)據(jù)表名drop字段名;

①刪除字段例題:

altertablemembersdrop單位電話;

342維護(hù)MySQL數(shù)據(jù)表

5.刪除數(shù)據(jù)表。

命令格式:

droptable[ifexists]數(shù)據(jù)表名;

①直接刪除數(shù)據(jù)表例題:

droptablemembers;刪除members數(shù)據(jù)表

②如果數(shù)據(jù)表存在就刪除數(shù)據(jù)表:

droptableifexistsmembers;如果members數(shù)據(jù)

裝存在就刪除members數(shù)據(jù)表

342維護(hù)MySQL數(shù)據(jù)表

6.更換數(shù)據(jù)表名。

命令格式:

renametable數(shù)據(jù)表名to新數(shù)據(jù)表名;

①更換數(shù)據(jù)表名例題:

renametablememberstomembersx;將數(shù)據(jù)表名為

members的更換為membersx

3.4.3維護(hù)數(shù)據(jù)表記錄

1.增加記錄

命令格式:

insertinto數(shù)據(jù)表名(字段名1,…字段名n)values(數(shù)值

1,…數(shù)值n);

字段i順序任意,字段i與數(shù)值i一一對(duì)應(yīng)。

①增加記錄例題:

insertintomembersx(身份證號(hào),性別,出生日期,工作單

位)values(,'男','1978?01?

037中國(guó)人民大學(xué)');

注意:增加記錄時(shí)主鍵字段或UNIQUE索引字段不能重復(fù)

外鍵字段值在關(guān)聯(lián)表中主鍵值必須已經(jīng)存在

3.4.3維護(hù)數(shù)據(jù)表記錄

2,刪除記錄

命令格式1:刪除數(shù)據(jù)表中全部記錄。

deletefrom數(shù)據(jù)表名;

①刪除數(shù)據(jù)表中全部記錄例題:

deletefrommembersx;

命令格式2:刪除數(shù)據(jù)表中符合條件的記錄。

deletefrom數(shù)據(jù)表名where條件表達(dá)式

②刪除數(shù)據(jù)表中符合條件的記錄例題:

deletefrommemberswhere

身份證號(hào)="10102197801010453’

3.4.3維護(hù)數(shù)據(jù)表記錄

3.修改記錄

命令格式1:修改數(shù)據(jù)表中全部記錄指定字

段的值

updatev數(shù)據(jù)表名〉setv字段名仁數(shù)值

…[字段名門=數(shù)值n]

字段i順序任意,字段i與數(shù)值i一一對(duì)應(yīng),同

時(shí)修改多個(gè)字段時(shí)set只使用一個(gè)。

①修改全部記錄指定字段值例題:

updatememberset會(huì)員密碼='9999991

3.4.3維護(hù)數(shù)據(jù)表記錄

3.修改記錄

命令格式2:修改數(shù)據(jù)表中符合條件的記錄指定字

段的值

updatev數(shù)據(jù)表名〉setv字段名1=數(shù)值…[字段名

n=數(shù)值n]wherev條件表達(dá)式〉

①修改身份證號(hào)為的會(huì)員

密碼為‘8888881會(huì)員姓名為‘趙華'例題:

updatememberset會(huì)員密碼='888888',會(huì)員姓名='趙

華'where身份證號(hào)=;

3.4.4選取數(shù)據(jù)表記錄

1.選取表達(dá)式命令格式

命令格式1:選取顯示表達(dá)式表結(jié)果

selectv表達(dá)式表〉

表達(dá)式表:獲取顯示表達(dá)式結(jié)果。包括算術(shù)表達(dá)式,比較

表達(dá)式,邏輯表達(dá)式。

⑴算術(shù)表達(dá)式:運(yùn)算對(duì)象+算術(shù)運(yùn)算符+運(yùn)算對(duì)象

算術(shù)運(yùn)算符:+,■,*,I

例題:

select18+25*4;一個(gè)表達(dá)式

sleet18+25*4,100/4+5;兩個(gè)表達(dá)式

3.4.4選取數(shù)據(jù)表記錄

1.選取表達(dá)式命令格式

⑵比較表達(dá)式:運(yùn)算對(duì)象+算術(shù)運(yùn)算符+運(yùn)算對(duì)象

比較運(yùn)算符:大于〉,大于等于>=,小于V,小于等于V=,

等于=,不等于介于范圍內(nèi)between,存在于in,類

似于like,binary全等選項(xiàng)

注:比較結(jié)果為一個(gè)邏輯值1表示表達(dá)式成立,邏輯

值0表示表達(dá)式不成立。

例題:

select10>8,10<8,10=8,10<>8;

1001

344選取數(shù)據(jù)表記錄

⑵比較表達(dá)式:

binary選項(xiàng)例題:

selectbinary

10

between例題:起始值and終止值

select10between0and100,10betwenn50and100;

10

in例題:判斷存在的集合

select勺inbinary<g,in(tr,/g,,,b,),,a,in(4r,,,g,,,b,);

100

344選取數(shù)據(jù)表記錄

⑵比較表達(dá)式:

[not]Hke例題:

通配符%任意符號(hào)

select'張華'昨6'張%','張華'叱/%張%','張華'

like%張';

110

通配符一個(gè)字符

select,張華'like弓長(zhǎng)'張華'like,張'張華'

like1張';一

100

not選項(xiàng)是類似結(jié)果取反

select'張華'notlike,張%';

344選取數(shù)據(jù)表記錄

⑶邏輯表達(dá)式:運(yùn)算對(duì)象+邏輯運(yùn)算符+運(yùn)算對(duì)象

邏輯運(yùn)算符:and與(并且),or或(或者),not非(取反)

邏輯真為1,邏輯假為0

abaandbaorbnota

00001

10010

01011

11110

select1and1,1and0,1or1,0or0,not0,not1;

101010

3.4.4選取數(shù)據(jù)表記錄

1.選取數(shù)據(jù)表數(shù)據(jù)表達(dá)式結(jié)果命令格式

命令格式2:選取數(shù)據(jù)表中指定字段,指定記錄的結(jié)果,

并對(duì)輸出結(jié)果進(jìn)行重組。

selectv字段名表〉[fromv數(shù)據(jù)表名表,wherev條件表

達(dá)式,[orderby字段名[asc|desc]][groupbyv字段

名>]]

字段名表:顯示獲取結(jié)果

from數(shù)據(jù)表名表:數(shù)據(jù)源

where條件表達(dá)式:獲取數(shù)據(jù)條件

orderby字段名:按字段進(jìn)行升序asc或降序desc排序

groupby字段名:按字段進(jìn)行分組

344選取數(shù)據(jù)表記錄

⑴選取輸出一個(gè)數(shù)據(jù)表的所有記錄的所有字段內(nèi)容。

命令格式:

select*fromv數(shù)據(jù)表名〉

*代表所有字段

例題:

select*frommembers;

顯示members數(shù)據(jù)表的所有記錄的所有字段。

344選取數(shù)據(jù)表記錄

⑵選取輸出一個(gè)數(shù)據(jù)表的所有記錄的部分字段內(nèi)容。

命令格式:

selectv字段名表達(dá)式〉fromv數(shù)據(jù)表名〉

例題:

select身份證號(hào),性另1出生日期,frommembers;

顯示members數(shù)據(jù)表的所有記錄的身份證號(hào)、性別、

出生日期字段。

3.4.4選取數(shù)據(jù)表記錄

⑶選取輸出一個(gè)數(shù)據(jù)表的所有記錄的部分字段內(nèi)容,

字段名稱使用自定義名稱,數(shù)據(jù)表名使用自定義數(shù)

據(jù)表別名。

命令格式:

selectv字段名as自定義名稱〉from〈數(shù)據(jù)表名as

自定義數(shù)據(jù)表別名〉

例題:

select身份證號(hào)asVIP身份證號(hào),性別as會(huì)員性別,出

生日期frommembersasmbs;

顯示members數(shù)據(jù)表的所有記錄的身份證號(hào)(VIP身份

證號(hào))、性另M會(huì)員性別)、出生日期字段。

344選取數(shù)據(jù)表記錄

⑷選取輸出一個(gè)數(shù)據(jù)表的符合條件記錄的所有字段內(nèi)

容。

命令格式:

select*from〈數(shù)據(jù)表名〉where〈條件表達(dá)式〉

例題:

select*frommemberswhere性另仁女’;

顯示members數(shù)據(jù)表的所有性別為'女'的記錄的所

有字段。

344選取數(shù)據(jù)表記錄

⑸選取輸出一個(gè)數(shù)據(jù)表的符合條件記錄的部分字段內(nèi)

容。

命令格式:

selectv字段名表〉fromv數(shù)據(jù)表名〉wherev條件表

達(dá)式,

例題:

select身份證號(hào),性別,出生日期,職稱代碼from

memberswhere性另女’;

顯示members數(shù)據(jù)表的所有性別為'女'的記錄的身

份證號(hào)、性別、出生日期、職稱代碼字段。

3.4.4選取數(shù)據(jù)表記錄

⑹選取輸出一個(gè)數(shù)據(jù)表的所有記錄的部分字段和表達(dá)

式內(nèi)容,輸出記錄按指定字段排序。

命令格式:

select〈字段名表,表達(dá)式表〉from〈數(shù)據(jù)表名〉

orderby〈排序字段,asc|desc

例題:

select身份證號(hào),性另1出生日期,出生日期+1from

membersorderby出生日期asc;

顯示members數(shù)據(jù)表的所有記錄的身份證號(hào)、性別、

出生日期字段、出生日期+1表達(dá)式內(nèi)容,輸出結(jié)果

按出生日期字段進(jìn)行升序排序。

3.4.4選取數(shù)據(jù)表記錄

⑹選取輸出一個(gè)數(shù)據(jù)表的所有記錄,部分字段和表達(dá)

式內(nèi)容,輸出記錄按指定多個(gè)字段排序。

命令格式:

select〈字段名表,表達(dá)式表〉from〈數(shù)據(jù)表名〉

orderby〈排序字段asc|desc,〈排序字段2>

asc|desc

例題:

select身份證號(hào),性另山y(tǒng)ear(curdate())-year(出生日期)

as‘年齡'frommembersorderby性另Udesc,年

齡asc;

顯示members數(shù)據(jù)表的所有記錄的身份證號(hào)、性別、

年齡,輸出結(jié)果按性別降序、年齡升序進(jìn)行排序。

3.4.4選取數(shù)據(jù)表記錄

⑹選取輸出一個(gè)數(shù)據(jù)表的部分記錄的部分字段和表達(dá)

式內(nèi)容,輸出記錄按指定字段排序。

例題:

select身份證號(hào),性另ij,year(curdate())?year(出生日期)

as,年齡'frommemberswhere性別女'

orderby年齡desc;

curdate。函數(shù):獲取當(dāng)前日期(結(jié)果為日期型數(shù)據(jù))

year(日期型數(shù)據(jù)):獲取日期型數(shù)據(jù)中的年份。結(jié)果是

一個(gè)數(shù)彳直。

顯示members數(shù)據(jù)表的所有性別為女的記錄的身份證

號(hào)、性別、年齡,輸出結(jié)果按年齡表達(dá)式進(jìn)行降序

排序。

3.4.4選取數(shù)據(jù)表記錄

⑺選取輸出一個(gè)數(shù)據(jù)表的全部記錄,部分字段和表達(dá)

式內(nèi)容,輸出結(jié)果按指定字段分組,可以對(duì)結(jié)果集

進(jìn)行升序asc戢降庠desc理序。

命令格式:

selectv字段名表,表達(dá)式表〉fromv數(shù)據(jù)表名>

groupby〈分組字段〉[asc|desc];

例題:

select身份證號(hào),性另Ufrommembersgroupby性另U

asc;

顯示members數(shù)據(jù)表的所有記錄的身份證號(hào)、性別,

輸出結(jié)果按性別分組,并按性別進(jìn)行升序排序。

3.4.4選取數(shù)據(jù)表記錄

⑻選取輸出一個(gè)數(shù)據(jù)表的全部記錄按照指定字

段進(jìn)行分組,并計(jì)算每一個(gè)分組的記錄數(shù)

count()o

命令格式:

selectv字段名表,count。表達(dá)式〉fromv數(shù)

據(jù)表名〉groupbyv分的字段〉;

例題:

select身份證號(hào),性別,count(身份證號(hào))from

membersgroupby性另U;

顯示members數(shù)據(jù)表的男女的人數(shù)。

3.4.4選取數(shù)據(jù)表記錄

⑼選取輸出一個(gè)數(shù)據(jù)表的全部記錄按照指定字

段進(jìn)行分組,并計(jì)算每一個(gè)分組的記錄數(shù)

count()o

例題:distinct選項(xiàng)

select身份證號(hào),性別,count(性別)from

membersgroupby性另ij;

顯示members數(shù)據(jù)表的男女的人數(shù)。

select身份證號(hào),性另ij,count(distinct性另ij)

frommembersgroupby性別;

3.4.4選取數(shù)據(jù)表記錄

⑩選取輸出一個(gè)數(shù)據(jù)表的符合條件的記錄,和

部分字段,按照指定字段進(jìn)行分組,計(jì)算每

一個(gè)分組中最大的出生日期max()o

例題:

select身份證號(hào),性別,職稱代碼,max(出生日期)

frommemberswhere性另仁女'groupby

職稱代碼;

顯示members數(shù)據(jù)表的性別為女的每一個(gè)職稱

的最大出生日期。

3.4.4選取數(shù)據(jù)表記錄

?選取輸出一個(gè)數(shù)據(jù)表的部分字段,按照指定

字段進(jìn)行分組,并選取符合條件的分組,計(jì)

算每一個(gè)分組中最大的出生日期max()。

例題:

select身份證號(hào),性別,職稱代碼,max(出生日期)

frommembersgroupby職稱代碼having

性別='女';

顯示members數(shù)據(jù)表性別為女的每一個(gè)職稱組

中最大出生日期。

344選取數(shù)據(jù)表記錄

?選取輸出一個(gè)數(shù)據(jù)表的符合條件記錄的部分

字段或表達(dá)式,使用比較條件表達(dá)式。

例題:>選項(xiàng)

select身份證號(hào),性別,出生日期,職稱代碼from

memberswhere出生日期>'1980?01?01';

顯示members數(shù)據(jù)表的1980?01?01日期以后出

生的人員信息。

3.4.4選取數(shù)據(jù)表記錄

(13)選取輸出一個(gè)數(shù)據(jù)表的符合條件記錄的部分

字段或表達(dá)式,使用比較條件表達(dá)式。

例題:like%、—選項(xiàng)

select身份證號(hào),會(huì)員姓名,會(huì)員密碼from

memberwhere會(huì)員姓區(qū)like弓長(zhǎng)%,;

顯示member數(shù)據(jù)表姓張的人員信息。

select身份證號(hào),會(huì)員姓名,會(huì)員密碼from

memberwhere會(huì)員姓,like弓長(zhǎng)二

顯示member數(shù)據(jù)表姓名2個(gè)字姓張的人員信息。

3.4.4選取數(shù)據(jù)表記錄

?選取輸出一個(gè)數(shù)據(jù)表的符合條件(兩個(gè)以上條件)記錄的部

分字段或表達(dá)式,使用比較條件表達(dá)式。

例題:like%選項(xiàng)

select身份證號(hào),會(huì)員姓名,會(huì)員密碼frommemberwhere會(huì)

員密碼>節(jié)55555,and會(huì)員姓名notlike,張%,;

顯示member數(shù)據(jù)表不姓張并且會(huì)員密碼A5555551的人員信息。

select身份證號(hào),會(huì)員姓名,會(huì)員密碼frommemberwhere會(huì)

員密碼>'555555'or會(huì)員姓名notlike'張%';

顯示member數(shù)據(jù)表不姓張或者會(huì)員密碼>節(jié)55555,的人員信息。

3.4.4選取數(shù)據(jù)表記錄

(14)選取輸出一個(gè)數(shù)據(jù)表的符合條件(兩個(gè)以上條件)記錄的部

分字段或表達(dá)式,使用比較條件表達(dá)式。

例題:like選項(xiàng)

select身份證號(hào),會(huì)員姓名,會(huì)員密碼frommemberwhere會(huì)

員密碼>'555555'and會(huì)員姓名notlike'張

顯示member數(shù)據(jù)表不姓張并且會(huì)員密碼>節(jié)55555,的人員信息。

select身份證號(hào),會(huì)員姓名,會(huì)員密碼frommemberwhere會(huì)

員密碼>'555555'or會(huì)員姓名notlike'張

顯示member數(shù)據(jù)表不姓張或者會(huì)員密碼>節(jié)55555,的人員信息。

3.4.4選取數(shù)據(jù)表記錄

?選取輸出來(lái)自于兩個(gè)以上的數(shù)據(jù)表的數(shù)據(jù)集合,定義輸

出條件和輸出的字段或表達(dá)式。輸出的字段必須指明所

屬數(shù)據(jù)表,同時(shí)還要指明數(shù)據(jù)表之間的關(guān)聯(lián)。使用數(shù)據(jù)

表別名(asmb)o

例題:

select身份證號(hào),會(huì)員姓名,會(huì)員密碼frommember;

顯示member數(shù)據(jù)表的身份證號(hào)、會(huì)員姓名、會(huì)員密碼。

select身份證號(hào),性別,出生日期frommembers;

顯示members數(shù)據(jù)表的身份證號(hào),性別,出生日期。

selectmb.身份證號(hào),會(huì)員姓名,會(huì)員密碼,性別,出生日期

frommemberasmb,memberswheremb.身份證號(hào)

=members.身份證號(hào);

3.4.4選取數(shù)據(jù)表記錄

(16)選取輸出來(lái)自于五個(gè)數(shù)據(jù)表的數(shù)據(jù)集合。輸出同名字段

必須指明所屬數(shù)據(jù)表,必須用and分隔定義表間關(guān)聯(lián)。

例題:輸出訂單號(hào)(sell)、書(shū)名(book)、單價(jià)(book)、身份

證號(hào)(member)、會(huì)員姓名(member)、性另U(members)、

職稱名稱(title)。

select訂單號(hào),書(shū)名,單價(jià),member.身份證號(hào),會(huì)員姓名,性

別,職稱名稱frombook,member,title,members,sell

wheresell.身份證號(hào)=member.身份證號(hào)andsell.圖書(shū)

編號(hào)=book.圖書(shū)編號(hào)andmembers.身份證號(hào)

=member.身份證號(hào)andmembers.職稱代碼=title.職稱

代碼;

3.4.4選取數(shù)據(jù)表記錄

(16)選取輸出來(lái)自于五個(gè)數(shù)據(jù)表的數(shù)據(jù)集合。輸出同名字段

必須指明所屬數(shù)據(jù)表,必須用and分隔定義表間關(guān)聯(lián)。

例題:輸出訂單號(hào)(sell)、書(shū)名(book)、單價(jià)(book)、身份

證號(hào)(member)、會(huì)員姓名(member)、性另U(members)、

職稱名稱(title)。選取條件,張宇購(gòu)買的圖書(shū)清單。

select訂單號(hào),書(shū)名,單價(jià),member.身份證號(hào),會(huì)員姓名,性

別,職稱名稱frombook,member,title,members,sell

where(sell.身份證號(hào)=member.身份證號(hào)andsell.圖書(shū)

編號(hào)=book.圖書(shū)編號(hào)andmembers.身份證號(hào)

=member.身份證號(hào)andmembers.職稱代碼=title.職稱

代碼)and會(huì)員姓名張宇';

3.4.4選取數(shù)據(jù)表記錄

(16)選取輸出來(lái)自于五個(gè)數(shù)據(jù)表的數(shù)據(jù)集合。輸出同名字段

必須指明所屬數(shù)據(jù)表,必須用and分隔定義表間關(guān)聯(lián)。

例題:輸出訂單號(hào)(sell)、書(shū)名(book)、單價(jià)(book)、身份

證號(hào)(member)、會(huì)員姓名(member)、性另U(members)、

職稱名稱(title)。選取條件,張宇、趙成新、李來(lái)群三人

購(gòu)買的圖書(shū)清單。

select訂單號(hào),書(shū)名,單價(jià),member.身份證號(hào),會(huì)員姓名,性

別,職稱名稱frombook,member,title,members,sell

where(sell.身份證號(hào)=member.身份證號(hào)andsell.圖書(shū)

編號(hào)=book.圖書(shū)編號(hào)andmembers.身份證號(hào)

=member.身份證號(hào)andmembers.職稱代碼=title.職稱

代碼)and會(huì)員姓名in(,張宇';趙成新';李來(lái)群');

3.4.4選取數(shù)據(jù)表記錄

(16)選取輸出來(lái)自于五個(gè)數(shù)據(jù)表的數(shù)據(jù)集合。輸出同名字段

必須指明所屬數(shù)據(jù)表,必須用and分隔定義表間關(guān)聯(lián)。

例題:輸出訂單號(hào)(sell)、書(shū)名(book)、單價(jià)(book)、身份

證號(hào)(member)、會(huì)員姓名(member)、性另U(members)、

職稱名稱(title)。按會(huì)員姓名排序的圖書(shū)清單。

selectmember.身份證號(hào),會(huì)員姓名,訂單號(hào),書(shū)名,單價(jià),性

別,職稱名稱frombook,member,title,members,sell

where(sell.身份證號(hào)=member.身份證號(hào)andsell.圖書(shū)

編號(hào)=book.圖書(shū)編號(hào)andmembers.身份證號(hào)

=member.身份證號(hào)andmembers.職稱代碼=title.職稱

代碼)orderby會(huì)員姓名;

3.4.4選取數(shù)據(jù)表記錄

(16)選取輸出來(lái)自于五個(gè)數(shù)據(jù)表的數(shù)據(jù)集合。輸出同名字段

必須指明所屬數(shù)據(jù)表。必須用and分隔定義表間關(guān)聯(lián)。

例題:輸出身份證號(hào)(member)、會(huì)員姓名(member)、訂

溫馨提示

  • 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)論