本書(shū)以當(dāng)前流行的MySQL為平臺(tái),系統(tǒng)介紹MySQL數(shù)據(jù)庫(kù)及其應(yīng)用開(kāi)發(fā),全書(shū)內(nèi)容分為4個(gè)部分。第一部分MySQL基礎(chǔ),首先介紹數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)和MySQL環(huán)境構(gòu)建方法,然后分別介紹MySQL數(shù)據(jù)庫(kù)和表、MySQL查詢和視圖、MySQL索引與完整性約束、MySQL語(yǔ)言、MySQL過(guò)程式數(shù)據(jù)庫(kù)對(duì)象、MySQL數(shù)據(jù)庫(kù)備份與恢復(fù)、MySQL用戶權(quán)限與維護(hù)、MySQL事務(wù)管理等,并配套習(xí)題、實(shí)訓(xùn)和微課視頻。第二部分MySQL數(shù)據(jù)庫(kù)綜合實(shí)訓(xùn),主要是綜合應(yīng)用MySQL數(shù)據(jù)庫(kù)及其主要對(duì)象,并使用樣本數(shù)據(jù)測(cè)試各對(duì)象相互配合及其功能的正確性。第三部分MySQL數(shù)據(jù)庫(kù)綜合應(yīng)用開(kāi)發(fā),主要基于PHP、Python和Android等流行平臺(tái),使讀者通過(guò)系統(tǒng)實(shí)踐熟悉MySQL數(shù)據(jù)庫(kù)的應(yīng)用開(kāi)發(fā)要領(lǐng)。3個(gè)應(yīng)用系統(tǒng)既是獨(dú)立的,又可組成一個(gè)完整的應(yīng)用系統(tǒng)。第四部分MySQL數(shù)據(jù)庫(kù)綜合應(yīng)用開(kāi)發(fā)擴(kuò)展,主要基于C#和JavaEE等平臺(tái)進(jìn)行MySQL的綜合應(yīng)用開(kāi)發(fā)實(shí)踐。
本書(shū)提供PPT教學(xué)課件、教學(xué)大綱、電子教案、習(xí)題參考答案、模擬試卷及參考答案等教學(xué)資源,用書(shū)教師可登錄人郵教育社區(qū)免費(fèi)下載。
本書(shū)可作為大學(xué)本科、高職高專相關(guān)課程的專業(yè)教材,也可作為廣大數(shù)據(jù)庫(kù)應(yīng)用開(kāi)發(fā)人員的參考用書(shū)。
1.暢銷書(shū)作者鄭阿奇,教材內(nèi)容質(zhì)量經(jīng)市場(chǎng)驗(yàn)證。
2.基礎(chǔ)理論+實(shí)驗(yàn)+綜合應(yīng)用實(shí)習(xí),助力讀者全面深刻理解MySQL數(shù)據(jù)庫(kù)原理與應(yīng)用方法。
3.提供基于PHP、JAVAEE、C#的開(kāi)發(fā)案例,且每個(gè)實(shí)習(xí)實(shí)現(xiàn)功能相同,讀者可以實(shí)現(xiàn)舉一反三的學(xué)習(xí)效果。
4.學(xué)習(xí)本書(shū),通過(guò)模仿即可獨(dú)立開(kāi)發(fā)小型MySQL數(shù)據(jù)庫(kù)系統(tǒng)。
5.提供全套微課視頻,教學(xué)資源豐富。
鄭阿奇 鄭阿奇,南京師范大學(xué)計(jì)算機(jī)系副教授,南京師范大學(xué)中北學(xué)院信息系教學(xué)主任。1986年開(kāi)始,在教學(xué)和科技開(kāi)發(fā)的同時(shí),一直在從事計(jì)算機(jī)應(yīng)用性和編程類教材的研究,先后編寫(xiě)或主編計(jì)算機(jī)教材45本,其中系列教材3套。獲得國(guó)家教委優(yōu)秀教材二等獎(jiǎng)、電子部?jī)?yōu)秀教材二等獎(jiǎng)、江蘇省暢銷圖書(shū)二等獎(jiǎng)。參加主持國(guó)家863子項(xiàng)目,主持江蘇省、南京市、泰州市和橫向項(xiàng)目多項(xiàng)。獲江蘇省科技進(jìn)步獎(jiǎng)、江蘇省優(yōu)秀軟件獎(jiǎng)、南京市創(chuàng)新成果獎(jiǎng)、泰州市科技進(jìn)步獎(jiǎng)。2000年,主編的高等學(xué)校計(jì)算機(jī)系列教材、首次提出應(yīng)用性和編程類教材實(shí)用性和系列化的思想,得到全國(guó)廣大師生的廣泛好評(píng),出版后一直暢銷,總碼洋3800萬(wàn)以上。2005年,獲江蘇省優(yōu)秀教學(xué)成果二等獎(jiǎng),南京師范大學(xué)教學(xué)成果一等獎(jiǎng)。2007年,被評(píng)為南京師范大學(xué)教學(xué)名師首批培養(yǎng)對(duì)象。Visual C++實(shí)用教程(第3版),電子工業(yè)出版社,累計(jì)銷售12萬(wàn)。
目錄
第 一部分 MySQL基礎(chǔ)
第 1章 MySQL初步 1
1.1 數(shù)據(jù)庫(kù)系統(tǒng)和數(shù)據(jù)模型 1
1.1.1 數(shù)據(jù)庫(kù)系統(tǒng) 1
1.1.2 數(shù)據(jù)模型 2
1.2 數(shù)據(jù)庫(kù)設(shè)計(jì) 4
1.2.1 概念模型 4
1.2.2 邏輯模型 5
1.2.3 物理模型 6
1.3 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng) 6
1.3.1 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)架構(gòu) 6
1.3.2 應(yīng)用系統(tǒng)的數(shù)據(jù)接口 7
1.4 MySQL數(shù)據(jù)庫(kù) 8
1.4.1 MySQL安裝運(yùn)行 8
1.4.2 MySQL常用界面工具 10
習(xí)題 10
實(shí)訓(xùn) 11
第 2章 MySQL數(shù)據(jù)庫(kù)和表 12
2.1 MySQL數(shù)據(jù)庫(kù) 12
2.1.1 創(chuàng)建數(shù)據(jù)庫(kù) 12
2.1.2 修改數(shù)據(jù)庫(kù) 13
2.1.3 刪除數(shù)據(jù)庫(kù) 13
2.2 MySQL表 13
2.2.1 創(chuàng)建表 13
2.2.2 修改表 16
2.2.3 刪除表 16
2.3 表記錄的操作 17
2.3.1 插入記錄 17
2.3.2 修改記錄 19
2.3.3 刪除記錄 20
習(xí)題 21
實(shí)訓(xùn) 23
第3章 MySQL查詢和視圖 28
3.1 MySQL數(shù)據(jù)庫(kù)查詢 28
3.1.1 選擇輸出列 28
3.1.2 數(shù)據(jù)來(lái)源 33
3.1.3 查詢條件 36
3.1.4 分組 44
3.1.5 分組條件 45
3.1.6 排序 46
3.1.7 輸出行限制 48
3.1.8 聯(lián)合查詢 48
3.1.9 行瀏覽查詢 49
3.2 MySQL視圖 51
3.2.1 視圖概念 51
3.2.2 創(chuàng)建視圖 51
3.2.3 查詢視圖 52
3.2.4 更新視圖 53
3.2.5 修改視圖 55
3.2.6 刪除視圖 55
習(xí)題 55
實(shí)訓(xùn) 56
第4章 MySQL索引與完整性約束 63
4.1 MySQL索引 63
4.2 MySQL索引創(chuàng)建 64
4.3 MySQL數(shù)據(jù)完整性約束 66
4.3.1 主鍵約束 66
4.3.2 替代鍵約束 67
4.3.3 參照完整性約束 68
4.3.4 CHECK完整性約束 70
4.3.5 命名完整性約束 71
4.3.6 刪除完整性約束 71
習(xí)題 72
實(shí)訓(xùn) 73
第5章 MySQL語(yǔ)言 76
5.1 MySQL語(yǔ)言簡(jiǎn)介 76
5.2 常量和變量 77
5.2.1 常量 77
5.2.2 變量 80
5.3 運(yùn)算符與表達(dá)式 82
5.3.1 算術(shù)運(yùn)算符 82
5.3.2 比較運(yùn)算符 84
5.3.3 邏輯運(yùn)算符 85
5.3.4 位運(yùn)算符 86
5.3.5 運(yùn)算符優(yōu)先級(jí) 87
5.3.6 表達(dá)式 87
5.4 系統(tǒng)內(nèi)置函數(shù) 88
5.4.1 數(shù)學(xué)函數(shù) 88
5.4.2 聚合函數(shù) 90
5.4.3 字符串函數(shù) 90
5.4.4 日期和時(shí)間函數(shù) 92
5.4.5 加密函數(shù) 94
5.4.6 控制流函數(shù) 95
5.4.7 格式化函數(shù) 96
5.4.8 類型轉(zhuǎn)換函數(shù) 97
5.4.9 系統(tǒng)信息函數(shù) 98
習(xí)題 99
實(shí)訓(xùn) 100
第6章 MySQL過(guò)程式數(shù)據(jù)庫(kù)對(duì)象 104
6.1 存儲(chǔ)過(guò)程 104
6.1.1 創(chuàng)建存儲(chǔ)過(guò)程 104
6.1.2 存儲(chǔ)過(guò)程體編程 106
6.1.3 游標(biāo)及其應(yīng)用 111
6.1.4 存儲(chǔ)過(guò)程的調(diào)用、刪除和修改 113
6.2 存儲(chǔ)函數(shù) 115
6.2.1 創(chuàng)建存儲(chǔ)函數(shù) 116
6.2.2 存儲(chǔ)函數(shù)的調(diào)用、刪除和修改 117
6.3 觸發(fā)器 118
6.4 事件 121
6.4.1 創(chuàng)建事件 121
6.4.2 修改和刪除事件 123
習(xí)題 123
實(shí)訓(xùn) 124
第7章 MySQL數(shù)據(jù)庫(kù)備份與恢復(fù) 128
7.1 常用的備份方法 128
7.1.1 使用SQL語(yǔ)句導(dǎo)出或?qū)氡頂?shù)據(jù) 128
7.1.2 使用客戶端程序備份數(shù)據(jù)庫(kù) 131
7.1.3 直接復(fù)制 133
7.2 日志文件 133
7.2.1 啟用日志 133
7.2.2 用mysqlbinlog工具處理日志 134
習(xí)題 135
實(shí)訓(xùn) 135
第8章 MySQL用戶權(quán)限與維護(hù) 137
8.1 用戶管理 137
8.1.1 添加、刪除用戶 137
8.1.2 修改用戶名、密碼 138
8.2 權(quán)限控制 139
8.2.1 授予權(quán)限 139
8.2.2 權(quán)限轉(zhuǎn)移和限制 142
8.2.3 權(quán)限回收 143
8.3 表維護(hù)語(yǔ)句 144
8.3.1 索引列可壓縮性語(yǔ)句 144
8.3.2 檢查表是否有錯(cuò)誤語(yǔ)句 144
8.3.3 獲得表校驗(yàn)和語(yǔ)句 145
8.3.4 優(yōu)化表語(yǔ)句 145
8.3.5 修復(fù)表語(yǔ)句 145
習(xí)題 146
實(shí)訓(xùn) 146
第9章 MySQL事務(wù)管理 148
9.1 事務(wù)屬性 148
9.2 事務(wù)處理 149
9.3 事務(wù)隔離級(jí) 151
習(xí)題 152
第二部分 MySQL數(shù)據(jù)庫(kù)綜合實(shí)訓(xùn)
實(shí)訓(xùn)0 數(shù)據(jù)庫(kù)綜合實(shí)訓(xùn) 153
P0.1 數(shù)據(jù)庫(kù)及其對(duì)象創(chuàng)建 153
P0.1.1 創(chuàng)建數(shù)據(jù)庫(kù)及其對(duì)象 153
P0.1.2 創(chuàng)建表 153
P0.1.3 創(chuàng)建表間記錄完整性約束 155
P0.1.4 創(chuàng)建觸發(fā)器 156
P0.1.5 創(chuàng)建存儲(chǔ)過(guò)程 157
P0.2 測(cè)試數(shù)據(jù)庫(kù)對(duì)象關(guān)系的正確性 158
P0.2.1 插入學(xué)生表記錄 158
P0.2.2 插入課程表記錄 159
P0.2.3 插入成績(jī)表記錄 159
P0.2.4 觸發(fā)器功能測(cè)試 159
P0.2.5 表間記錄完整性約束測(cè)試 160
P0.2.6 存儲(chǔ)過(guò)程的功能測(cè)試 160
P0.3 功能和界面 160
P0.3.1 系統(tǒng)主頁(yè) 160
P0.3.2 “學(xué)生管理”功能界面 161
P0.3.3 “課程管理”功能界面 161
P0.3.4 “成績(jī)管理”功能界面 162
第三部分 MySQL數(shù)據(jù)庫(kù)綜合應(yīng)用開(kāi)發(fā)
實(shí)訓(xùn)1 PHP/MySQL學(xué)生成績(jī)管理系統(tǒng) 163
P1.1 PHP開(kāi)發(fā)平臺(tái)搭建 163
P1.1.1 創(chuàng)建PHP環(huán)境 163
P1.1.2 Eclipse安裝與配置 163
P1.2 PHP開(kāi)發(fā)入門 164
P1.2.1 PHP項(xiàng)目的建立 164
P1.2.2 PHP項(xiàng)目的運(yùn)行 164
P1.2.3 PHP連接MySQL 166
P1.3 系統(tǒng)主頁(yè)設(shè)計(jì) 166
P1.3.1 主界面 166
P1.3.2 功能導(dǎo)航 168
P1.4 學(xué)生管理 168
P1.4.1 界面設(shè)計(jì) 168
P1.4.2 功能實(shí)現(xiàn) 172
P1.5 成績(jī)管理 174
P1.5.1 界面設(shè)計(jì) 174
P1.5.2 功能實(shí)現(xiàn) 176
P1.6 課程管理 177
實(shí)訓(xùn)2 Python/MySQL學(xué)生成績(jī)管理系統(tǒng) 179
P2.1 Python環(huán)境安裝 179
P2.1.1 安裝Python環(huán)境 179
P2.1.2 安裝MySQL驅(qū)動(dòng)庫(kù) 179
P2.2 Python程序開(kāi)發(fā) 180
P2.2.1 開(kāi)發(fā)前的準(zhǔn)備工作 180
P2.2.2 實(shí)現(xiàn)思路 181
P2.2.3 功能代碼 181
P2.2.4 運(yùn)行效果 185
實(shí)訓(xùn)3 Android Studio/MySQL學(xué)生成績(jī)管理系統(tǒng) 186
P3.1 環(huán)境搭建 186
P3.1.1 基本原理 186
P3.1.2 開(kāi)發(fā)工具安裝 187
P3.1.3 MySQL數(shù)據(jù)庫(kù)準(zhǔn)備 187
P3.2 服務(wù)器端Servlet程序開(kāi)發(fā) 188
P3.2.1 創(chuàng)建動(dòng)態(tài)Web項(xiàng)目 188
P3.2.2 編寫(xiě)Servlet程序 189
P3.2.3 打包部署 194
P3.3 移動(dòng)端Android程序開(kāi)發(fā) 195
P3.3.1 創(chuàng)建Android工程 195
P3.3.2 設(shè)計(jì)界面 196
P3.3.3 編寫(xiě)移動(dòng)端代碼 197
P3.3.4 運(yùn)行測(cè)試 201
第四部分 MySQL數(shù)據(jù)庫(kù)綜合應(yīng)用開(kāi)發(fā)擴(kuò)展
實(shí)訓(xùn)4 C#/MySQL學(xué)生成績(jī)管理系統(tǒng) 205
實(shí)訓(xùn)5 JavaEE/MySQL學(xué)生成績(jī)管理系統(tǒng) 205
附錄 學(xué)生成績(jī)(xscj)數(shù)據(jù)庫(kù)中的表結(jié)構(gòu)及樣本數(shù)據(jù)記錄 206