關(guān)于我們
書單推薦
新書推薦
|
PHP與MySQL程序設(shè)計 第5版
本書是全面講述PHP 與MySQL 的經(jīng)典暢銷之作,不但詳細(xì)介紹了這兩種技術(shù)及其相關(guān)工具的核心特性,還講解了如何高效地結(jié)合這兩種技術(shù)構(gòu)建出健壯的數(shù)據(jù)驅(qū)動的應(yīng)用程序。書中大量實際的示例和深入的分析均來自于作者在這方面多年的專業(yè)經(jīng)驗,可用于解決開發(fā)者在實際工作中所面臨的各種挑戰(zhàn)。第5 版涵蓋了PHP 7 的新增功能以及新版MySQL 的新特性。
1.本書是全面講述PHP與MySQL的經(jīng)典暢銷之作,不但詳細(xì)介紹了這兩種技術(shù)及其相關(guān)工具的核心特性,還講解了如何高效地結(jié)合這兩種技術(shù)構(gòu)建出健壯的數(shù)據(jù)驅(qū)動的應(yīng)用程序。
2.作者基于20多年的專業(yè)開發(fā)經(jīng)驗,提供了大量實用示例,并針對開發(fā)者在實踐中會遇到的挑戰(zhàn)提供了真知灼見。
3.第5版全面涵蓋了PHP7的的新增強和新改進,以及新版MySQL的那些值得信賴的特性。對于想使用PHP編寫動態(tài)Web應(yīng)用的讀者來說,本書是一份實用的參考指南。
上一版讀者評論
“內(nèi)容廣,可以用來入門,用來參考查詢也不錯。”
“寫得很全面,涵蓋了PHP的方方面面,講得也通俗易懂,并且都是作者經(jīng)驗之談。例子都是具體實踐中會遇到的問題,和實際開發(fā)很貼近。”
弗蘭克·M.克羅曼(Frank M. Kromann)
Amazon軟件開發(fā)經(jīng)理,Web by Pixel公司聯(lián)合創(chuàng)始人兼CEO,有20余年開發(fā)和管理經(jīng)驗的PHP專家,在使用軟件和技術(shù)解決商業(yè)問題方面有30余年經(jīng)驗。在雜志上發(fā)表過多篇PHP文章,另合著有《PHP 5范例代碼查詢辭典》。
第 1 章 PHP 簡介 1
1.1 PHP 核心特性 1
1.1.1 實用性 1
1.1.2 能力 3
1.1.3 可能性 3
1.1.4 價格 3
1.2 PHP 現(xiàn)狀 4
1.3 PHP 生態(tài)系統(tǒng) 5
1.3.1 Drupal 5
1.3.2 WordPress 6
1.3.3 Magento 6
1.3.4 MediaWiki 6
1.3.5 SugarCRM 6
1.3.6 Zend Framework 6
1.4 小結(jié) 7
第 2 章 環(huán)境配置 8
2.1 選擇主機環(huán)境 9
2.1.1 虛擬服務(wù)器 9
2.1.2 平臺即服務(wù)(PaaS) 9
2.2 安裝先決條件 9
2.2.1 Windows 9
2.2.2 macOS 14
2.2.3 Linux 15
2.2.4 從源代碼安裝 15
2.3 配置PHP 15
2.3.1 Apache httpd.conf 和.htaccess文件 16
2.3.2 在運行腳本中配置 17
2.3.3 PHP 的配置指令 17
2.4 選擇編輯器 23
2.4.1 PHPStorm 23
2.4.2 Atom 23
2.4.3 Sublime Text 23
2.4.4 Visual Studio Code 23
2.4.5 PDT(PHP 開發(fā)工具) 23
2.4.6 Zend Studio 23
2.5 小結(jié) 24
第3 章 PHP 基礎(chǔ) 25
3.1 在網(wǎng)頁中嵌入PHP 代碼 25
3.1.1 默認(rèn)語法 25
3.1.2 短標(biāo)簽 26
3.1.3 嵌入多個代碼塊 26
3.2 在代碼中添加注釋 27
3.2.1 單行C++語法 27
3.2.2 多行注釋 27
3.3 向客戶端輸出數(shù)據(jù) 28
3.3.1 使用printf()語句進行復(fù)雜輸出 29
3.3.2 sprintf()語句 30
3.4 PHP 數(shù)據(jù)類型 30
3.4.1 標(biāo)量數(shù)據(jù)類型 30
3.4.2 復(fù)合數(shù)據(jù)類型 31
3.4.3 數(shù)據(jù)類型轉(zhuǎn)換 32
3.4.4 數(shù)據(jù)類型的自動轉(zhuǎn)換 33
3.4.5 類型標(biāo)識符函數(shù) 34
3.5 使用變量處理動態(tài)數(shù)據(jù) 34
3.5.1 變量聲明 34
3.5.2 PHP 超級全局變量 35
3.6 使用常量管理固定數(shù)據(jù) 38
3.7 使用表達(dá)式 38
3.7.1 操作數(shù):表達(dá)式的輸入 38
3.7.2 操作符:表達(dá)式的行為 39
3.8 字符串插值 43
3.8.1 雙引號字符串 43
3.8.2 轉(zhuǎn)義序列 44
3.8.3 單引號字符串 44
3.8.4 花括號 45
3.8.5 heredoc 45
3.8.6 nowdoc 45
3.9 控制結(jié)構(gòu) 45
3.9.1 條件語句 46
3.9.2 使用循環(huán)語句進行重復(fù)迭代 47
3.9.3 文件包含語句 51
3.10 小結(jié) 52
第4 章 函數(shù) 53
4.1 調(diào)用函數(shù) 53
4.2 創(chuàng)建函數(shù) 54
4.2.1 返回多個值 55
4.2.2 按值傳遞參數(shù) 55
4.2.3 參數(shù)默認(rèn)值 56
4.2.4 使用類型聲明 57
4.2.5 遞歸函數(shù) 57
4.2.6 匿名函數(shù) 60
4.2.7 函數(shù)庫 60
4.3 小結(jié) 61
第5 章 數(shù)組 62
5.1 什么是數(shù)組 62
5.2 創(chuàng)建數(shù)組 63
5.2.1 使用array()創(chuàng)建數(shù)組 64
5.2.2 使用list()提取數(shù)組 64
5.2.3 用預(yù)定義范圍的值填充數(shù)組 65
5.2.4 檢測數(shù)組 66
5.3 輸出數(shù)組 66
5.4 添加和刪除數(shù)組元素 67
5.4.1 在數(shù)組開頭添加一個值 68
5.4.2 在數(shù)組末尾添加一個值 68
5.4.3 在數(shù)組開頭刪除一個值 68
5.4.4 在數(shù)組末尾刪除一個值 68
5.5 數(shù)組元素定位 68
5.5.1 搜索數(shù)組 69
5.5.2 提取數(shù)組的鍵 70
5.5.3 提取數(shù)組的值 70
5.6 提取列 70
5.7 數(shù)組遍歷 71
5.7.1 提取數(shù)組當(dāng)前的鍵 71
5.7.2 提取數(shù)組當(dāng)前的值 71
5.7.3 移動數(shù)組指針 72
5.7.4 向函數(shù)傳遞數(shù)組值 72
5.8 確定數(shù)組大小和唯一性 73
5.8.1 確定函數(shù)大小 73
5.8.2 計算數(shù)組值的頻率 74
5.8.3 確定數(shù)組中的唯一值 74
5.9 數(shù)組排序 75
5.9.1 翻轉(zhuǎn)數(shù)組元素順序 75
5.9.2 鍵與值的互換 75
5.9.3 數(shù)組排序 76
5.10 數(shù)組的合并、切片、剪接和拆分 79
5.10.1 合并數(shù)組 79
5.10.2 遞歸追加數(shù)組 80
5.10.3 組合兩個數(shù)組 80
5.10.4 數(shù)組的切片 81
5.10.5 數(shù)組的剪接 81
5.10.6 計算數(shù)組交集 82
5.10.7 計算關(guān)聯(lián)數(shù)組的交集 83
5.10.8 計算數(shù)組的差 83
5.10.9 計算關(guān)聯(lián)數(shù)組的差 83
5.11 其他有用的數(shù)組函數(shù) 84
5.11.1 返回一組隨機的鍵 84
5.11.2 重排數(shù)組元素 84
5.12 小結(jié) 85
第6 章 面向?qū)ο蟮腜HP 86
6.1 OOP 的優(yōu)點 86
6.1.1 封裝 86
6.1.2 繼承 87
6.1.3 多態(tài) 87
6.2 OOP 核心概念 87
6.2.1 類 87
6.2.2 對象 88
6.2.3 屬性 88
6.2.4 常量 93
6.2.5 方法 93
6.3 構(gòu)造函數(shù)與析構(gòu)函數(shù) 96
6.3.1 構(gòu)造函數(shù) 96
6.3.2 析構(gòu)函數(shù) 98
6.4 靜態(tài)類成員 99
6.5 instanceof 關(guān)鍵字 99
6.6 輔助函數(shù) 100
6.6.1 確定一個類是否存在 100
6.6.2 確定對象上下文 100
6.6.3 獲取類的方法 100
6.6.4 獲取類的屬性 100
6.6.5 獲取已聲明的類 100
6.6.6 獲取對象屬性 101
6.6.7 確定對象的父類 101
6.6.8 確定對象類型 101
6.6.9 確定對象子類類型 101
6.6.10 確定方法是否存在 101
6.7 自動加載對象 101
6.8 trait 102
6.9 小結(jié) 102
第7 章 高級OOP 特性 103
7.1 PHP 不支持的高級OOP 特性 103
7.2 對象克隆 103
7.2.1 克隆示例 104
7.2.2 __clone()方法 105
7.3 繼承 106
7.3.1 類的繼承 106
7.3.2 繼承與構(gòu)造函數(shù) 108
7.3.3 繼承與延遲靜態(tài)綁定 109
7.4 接口 110
7.4.1 實現(xiàn)單個接口 111
7.4.2 實現(xiàn)多個接口 112
7.4.3 確定接口是否存在 112
7.5 抽象類 112
7.6 命名空間 114
7.7 小結(jié) 116
第8 章 錯誤與異常處理 117
8.1 所有問題都是因你而生 117
8.2 配置PHP 錯誤報告 118
8.2.1 設(shè)置錯誤報告等級 118
8.2.2 在瀏覽器上顯示錯誤信息 119
8.2.3 錯誤日志 119
8.2.4 創(chuàng)建和記錄自定義消息 120
8.3 異常處理 120
8.4 PHP 異常處理功能 121
8.4.1 擴展基礎(chǔ)異常類 121
8.4.2 默認(rèn)構(gòu)造函數(shù) 122
8.4.3 引入finally 代碼塊 122
8.4.4 擴展異常類 123
8.4.5 捕獲多個異常 123
8.4.6 標(biāo)準(zhǔn)PHP 類庫中的異常 125
8.5 PHP 7 中的錯誤處理 125
8.6 小結(jié) 126
第9 章 字符串與正則表達(dá)式 127
9.1 正則表達(dá)式 127
9.2 其他字符串專用函數(shù) 133
9.2.1 確定字符串的長度 134
9.2.2 比較兩個字符串 134
9.2.3 處理字符串大小寫 136
9.2.4 字符串與HTML 的轉(zhuǎn)換 137
9.3 正則表達(dá)式函數(shù)的替代方式 141
9.3.1 根據(jù)預(yù)定義字符對字符串進行分詞 141
9.3.2 根據(jù)預(yù)定義分隔符拆分字符串 142
9.3.3 將數(shù)組轉(zhuǎn)換為字符串 142
9.3.4 解析復(fù)雜字符串 143
9.3.5 找出字符串最后出現(xiàn)的位置 143
9.3.6 將所有字符串實例替換為另一個字符串 144
9.3.7 提取部分字符串 144
9.3.8 根據(jù)預(yù)定義偏移量返回部分字符串 145
9.3.9 確定字符串出現(xiàn)的頻率 145
9.3.10 將字符串的一部分替換為另一個字符串 146
9.3.11 填充和剝離字符串 146
9.3.12 字符與單詞計數(shù) 147
9.4 小結(jié) 149
第 10 章 處理文件與操作系統(tǒng) 150
10.1 了解文件與目錄 150
10.1.1 目錄分隔符 150
10.1.2 解析目錄路徑 150
10.1.3 計算文件、目錄和磁盤大小 152
10.1.4 確定訪問時間和修改時間 155
10.2 處理文件 156
10.2.1 資源的概念 156
10.2.2 換行符 156
10.2.3 文件結(jié)束標(biāo)志 156
10.2.4 打開與關(guān)閉文件 157
10.2.5 從文件讀取 158
10.2.6 將字符串寫入文件 164
10.2.7 移動文件指針 164
10.2.8 讀取目錄內(nèi)容 165
10.3 運行shell 命令 166
10.3.1 刪除目錄 166
10.3.2 重命名文件 167
10.3.3 觸摸文件 167
10.4 系統(tǒng)級程序執(zhí)行 167
10.4.1 凈化輸入 167
10.4.2 PHP 程序執(zhí)行函數(shù) 168
10.5 小結(jié) 170
第 11 章 第三方程序庫 171
11.1 PEAR 簡介 171
11.1.1 安裝PEAR 171
11.1.2 更新PEAR 172
11.2 使用PEAR 包管理器 172
11.2.1 安裝PEAR 包 172
11.2.2 自動安裝所有依賴 173
11.2.3 查看已經(jīng)安裝的PEAR 包 173
11.3 Composer 介紹 173
11.3.1 安裝Composer 173
11.3.2 使用Composer 174
11.4 使用C 程序庫擴展PHP 175
11.5 小結(jié) 176
第 12 章 日期與時間 177
12.1 UNIX 時間戳 177
12.2 PHP 日期與時間庫 177
12.2.1 驗證日期 178
12.2.2 格式化日期和時間 178
12.2.3 將時間戳轉(zhuǎn)換為用戶友好的值 181
12.2.4 處理時間戳 181
12.3 日期處理 183
12.3.1 顯示本地日期與時間 183
12.3.2 顯示網(wǎng)頁最近的修改日期 185
12.3.3 確定當(dāng)前月份的天數(shù) 186
12.3.4 確定任意給定月份的天數(shù) 186
12.3.5 計算當(dāng)前日期X 天后的日期 186
12.4 日期和時間類 187
12.4.1 DateTime 構(gòu)造函數(shù) 187
12.4.2 格式化日期 187
12.4.3 在實例化之后設(shè)定日期 188
12.4.4 在實例化之后設(shè)定時間 188
12.4.5 修改日期和時間 188
12.4.6 計算兩個日期之間的差 189
12.5 小結(jié) 189
第 13 章 表單 190
13.1 PHP 和Web 表單 190
13.2 驗證表單數(shù)據(jù) 192
13.2.1 文件刪除 192
13.2.2 跨站腳本 192
13.2.3 凈化用戶輸入 193
13.2.4 使用Filter 擴展檢驗和凈化數(shù)據(jù) 195
13.2.5 處理多值表單組件 197
13.3 小結(jié) 198
第 14 章 用戶身份驗證 199
14.1 HTTP 身份驗證的概念 199
14.2 使用PHP 進行用戶身份驗證 200
14.2.1 PHP 身份驗證變量 201
14.2.2 有用的函數(shù) 201
14.3 PHP 身份驗證方法 202
14.3.1 硬編碼身份驗證 202
14.3.2 基于文件的身份驗證 202
14.3.3 基于數(shù)據(jù)庫的身份驗證 204
14.4 用戶登錄管理 205
14.4.1 密碼散列 205
14.4.2 一次性URL 和密碼找回 206
14.5 使用OAuth 2.0 208
14.6 小結(jié) 209
第 15 章 處理文件上傳 210
15.1 通過HTTP 上傳文件 210
15.2 使用PHP 上傳文件 211
15.2.1 PHP 文件上傳及資源指令 211
15.2.2 $_FILES 數(shù)組 212
15.2.3 PHP 文件上傳函數(shù) 212
15.2.4 上傳中的錯誤消息 213
15.2.5 一個簡單的例子 214
15.3 小結(jié) 215
第 16 章 網(wǎng)絡(luò) 216
16.1 DNS、服務(wù)與服務(wù)器 216
16.1.1 DNS 216
16.1.2 服務(wù) 220
16.1.3 建立socket 連接 221
16.2 郵件 223
16.2.1 配置指令 223
16.2.2 使用PHP 腳本發(fā)送電子郵件 224
16.3 常見網(wǎng)絡(luò)任務(wù) 226
16.3.1 ping 一臺服務(wù)器 227
16.3.2 創(chuàng)建一個端口掃描程序 227
16.3.3 創(chuàng)建一個子網(wǎng)轉(zhuǎn)換程序 228
16.4 小結(jié) 229
第 17 章 會話處理 230
17.1 什么是會話處理 230
17.2 配置指令 230
17.2.1 管理會話存儲介質(zhì) 231
17.2.2 設(shè)置會話文件路徑 231
17.2.3 自動開啟會話 231
17.2.4 設(shè)置會話名稱 231
17.2.5 選擇cookie 或URL 重寫 232
17.2.6 設(shè)置會話cookie 的生命周期 232
17.2.7 設(shè)置會話cookie 的有效URL路徑 232
17.2.8 設(shè)置緩存 233
17.3 使用會話 234
17.3.1 開始一個會話 234
17.3.2 銷毀一個會話 234
17.3.3 設(shè)置和提取會話ID 234
17.3.4 創(chuàng)建和刪除會話變量 235
17.3.5 會話數(shù)據(jù)的編碼和解碼 236
17.4 會話處理實例 237
17.4.1 返回用戶的自動登錄 237
17.4.2 生成近期查看的文檔索引 239
17.5 創(chuàng)建定制的會話處理程序 240
17.5.1 將定制會話函數(shù)嵌入PHP 邏輯 241
17.5.2 使用基于MySQL 的定制會話處理程序 241
17.6 小結(jié) 243
第 18 章 Web 服務(wù) 244
18.1 為什么要使用Web 服務(wù) 244
18.2 從API 開始 244
18.3 API 安全性 248
18.4 創(chuàng)建API 249
18.5 小結(jié) 253
第 19 章 PHP 安全編程 254
19.1 PHP 安全配置 254
19.2 隱藏配置的詳細(xì)信息 256
19.2.1 隱藏Apache 256
19.2.2 隱藏PHP 257
19.3 隱藏敏感信息 257
19.3.1 隱藏文檔根目錄 258
19.3.2 拒絕訪問帶有某種擴展名的文件 258
19.4 數(shù)據(jù)加密 258
19.4.1 PHP 加密函數(shù) 258
19.4.2 使用OpenSSL 加密數(shù)據(jù) 261
19.5 小結(jié) 263
第 20 章 PHP 與jQuery 的集成 264
20.1 Ajax 簡介 264
20.2 jQuery 簡介 265
20.2.1 安裝jQuery 265
20.2.2 一個簡單的例子 265
20.2.3 對事件做出響應(yīng) 266
20.2.4 jQuery 和DOM 267
20.3 創(chuàng)建用戶名存在性檢驗器 269
20.4 小結(jié) 272
第 21 章 MVC 與框架 273
21.1 MVC 簡介 273
21.2 PHP 框架解決方案 274
21.2.1 CakePHP 框架 275
21.2.2 Symfony 框架 275
21.2.3 Zend 框架 275
21.2.4 Phalcon 框架 275
21.2.5 Laravel 框架 276
21.2.6 PHP 框架協(xié)作組織(PHP-FIG) 280
21.2.7 PSR-1 和PSR-2 編碼規(guī)范 280
21.2.8 PSR-4 自動加載 281
21.3 小結(jié) 281
第 22 章 MySQL 簡介 282
22.1 MySQL 為何如此流行 282
22.1.1 靈活性 282
22.1.2 能力 283
22.1.3 靈活的許可證選項 284
22.2 著名的MySQL 用戶 284
22.2.1 Craigslist 284
22.2.2 Twitter 284
22.2.3 GitHub 284
22.2.4 其他著名用戶 284
22.3 MariaDB:MySQL 的一種替代方案 285
22.4 小結(jié) 285
第 23 章 安裝與配置MySQL 286
23.1 下載MySQL 286
23.2 安裝MySQL 286
23.2.1 在Linux 上安裝MySQL 287
23.2.2 在Windows 上安裝與配置MySQL 289
23.3 啟動與停止MySQL 290
23.4 配置與優(yōu)化MySQL 291
23.4.1 mysqld_safe 包裝器 291
23.4.2 MySQL 配置與優(yōu)化參數(shù) 291
23.4.3 my.cnf 文件 294
23.5 配置PHP 與MySQL 一起工作 296
23.5.1 在Linux 上重新配置PHP 296
23.5.2 在Windows 上重新配置PHP 296
23.6 小結(jié) 296
第 24 章 MySQL 客戶端程序 297
24.1 命令行工具簡介 297
24.1.1 mysql 客戶端程序 297
24.1.2 mysqladmin 客戶端程序 304
24.1.3 其他有用的客戶端程序 305
24.2 有用的GUI 客戶端程序 307
24.3 phpMyAdmin 307
24.4 小結(jié) 308
第 25 章 MySQL 存儲引擎和數(shù)據(jù)類型 309
25.1 存儲引擎 309
25.1.1 InnoDB 310
25.1.2 MyISAM 310
25.1.3 MEMORY 311
25.1.4 MERGE 312
25.1.5 FEDERATED 312
25.1.6 ARCHIVE 313
25.1.7 CSV 313
25.1.8 EXAMPLE 313
25.1.9 BLACKHOLE 314
25.1.10 存儲引擎FAQ 314
25.2 數(shù)據(jù)類型和屬性 315
25.2.1 數(shù)據(jù)類型 315
25.2.2 數(shù)據(jù)類型屬性 319
25.3 處理數(shù)據(jù)庫和表 321
25.3.1 處理數(shù)據(jù)庫 321
25.3.2 處理數(shù)據(jù)表 322
25.3.3 修改表結(jié)構(gòu) 324
25.3.4 INFORMATION_SCHEMA 325
25.4 小結(jié) 327
第 26 章 MySQL 安全性 328
26.1 首先要做的事情 328
26.2 mysqld 守護進程的安全性 329
26.3 MySQL 訪問權(quán)限系統(tǒng) 330
26.3.1 權(quán)限系統(tǒng)的工作原理 330
26.3.2 訪問控制信息保存的位置 331
26.4 用戶與權(quán)限管理 334
26.4.1 創(chuàng)建用戶 334
26.4.2 刪除用戶 335
26.4.3 重命名用戶 335
26.4.4 grant 和revoke 命令 335
26.4.5 查看權(quán)限 339
26.5 限制用戶資源 339
26.6 安全的MySQL 連接 340
26.6.1 授權(quán)選項 340
26.6.2 SSL 選項 341
26.6.3 啟動MySQL 服務(wù)器并啟用SSL 342
26.6.4 啟用客戶端SSL 連接 342
26.6.5 保存SSL 選項到my.cnf 文件 342
26.7 小結(jié) 342
第 27 章 PHP 與MySQL 343
27.1 安裝的前提條件 344
27.1.1 在Linux/UNIX 上啟用mysqli 344
27.1.2 在Windows 上啟用mysqli 344
27.1.3 使用MySQL Native Driver 344
27.1.4 管理用戶權(quán)限 344
27.1.5 樣本數(shù)據(jù) 345
27.2 使用mysqli 擴展 345
27.2.1 建立與斷開連接 345
27.2.2 處理連接錯誤 346
27.2.3 提取錯誤信息 346
27.2.4 保存連接信息到單獨的文件中 347
27.2.5 保證連接信息的安全性 348
27.3 與數(shù)據(jù)庫交互 348
27.3.1 發(fā)送查詢到數(shù)據(jù)庫 348
27.3.2 解析查詢結(jié)果 350
27.3.3 確定選取和影響的行 351
27.3.4 使用預(yù)處理語句 352
27.4 執(zhí)行數(shù)據(jù)庫事務(wù) 356
27.4.1 開啟自動提交模式 356
27.4.2 提交事務(wù) 356
27.4.3 回滾事務(wù) 356
27.5 小結(jié) 357
第 28 章 PDO 介紹 358
28.1 另一種數(shù)據(jù)庫抽象層嗎 358
28.2 使用PDO 359
28.2.1 安裝PDO 360
28.2.2 連接到數(shù)據(jù)庫服務(wù)器并選擇數(shù)據(jù)庫 360
28.2.3 處理錯誤 362
28.2.4 獲取和設(shè)置屬性 363
28.2.5 執(zhí)行查詢 364
28.2.6 預(yù)處理語句介紹 365
28.2.7 提取數(shù)據(jù) 368
28.2.8 設(shè)置綁定列 370
28.2.9 處理事務(wù) 371
28.3 小結(jié) 372
第 29 章 存儲例程 373
29.1 你應(yīng)該使用存儲例程嗎 373
29.1.1 存儲例程的優(yōu)點 373
29.1.2 存儲例程的缺點 373
29.2 MySQL 如何實現(xiàn)存儲例程 374
29.2.1 創(chuàng)建一個存儲例程 374
29.2.2 聲明和設(shè)置變量 376
29.2.3 執(zhí)行存儲例程 377
29.2.4 創(chuàng)建并使用多語句存儲例程 377
29.2.5 在一個存儲例程中調(diào)用另一個存儲例程 383
29.2.6 修改存儲例程 384
29.2.7 刪除存儲例程 384
29.2.8 查看存儲例程的狀態(tài) 384
29.2.9 查看存儲例程的創(chuàng)建語法 385
29.2.10 條件處理 386
29.3 在Web 應(yīng)用中集成存儲例程 386
29.3.1 創(chuàng)建雇員獎金接口 386
29.3.2 提取多個行 387
29.4 小結(jié) 388
第30 章 MySQL 觸發(fā)器 389
30.1 觸發(fā)器介紹 389
30.1.1 為什么使用觸發(fā)器 389
30.1.2 在事件之前采取行動 390
30.1.3 在事件之后采取行動 390
30.1.4 before 觸發(fā)器與after 觸發(fā)器 391
30.2 MySQL 觸發(fā)器支持 391
30.2.1 創(chuàng)建觸發(fā)器 391
30.2.2 查看已有的觸發(fā)器 392
30.2.3 修改觸發(fā)器 394
30.2.4 刪除觸發(fā)器 394
30.3 集成觸發(fā)器到Web 應(yīng)用 395
30.4 小結(jié) 396
第31 章 MySQL 視圖 397
31.1 視圖介紹 397
31.2 MySQL 對視圖的支持 398
31.2.1 創(chuàng)建并運行視圖 398
31.2.2 查看視圖信息 402
31.2.3 修改視圖 404
31.2.4 刪除視圖 404
31.2.5 更新視圖 404
31.3 集成視圖到Web 應(yīng)用 405
31.4 小結(jié) 406
第32 章 實用數(shù)據(jù)庫查詢 407
32.1 樣本數(shù)據(jù) 407
32.2 創(chuàng)建表格化輸出 407
32.2.1 安裝HTML_Table 408
32.2.2 創(chuàng)建簡單表格 408
32.2.3 創(chuàng)建可讀性更好的行輸出 409
32.2.4 根據(jù)數(shù)據(jù)庫數(shù)據(jù)創(chuàng)建表格 410
32.3 輸出排序 411
32.4 創(chuàng)建分頁輸出 412
32.5 列出頁碼 414
32.6 使用子查詢查詢多個表 415
32.6.1 使用子查詢進行比較 416
32.6.2 使用子查詢確定存在性 416
32.6.3 使用子查詢進行數(shù)據(jù)庫維護 417
32.6.4 在PHP 中使用子查詢 417
32.7 使用游標(biāo)迭代結(jié)果集合 418
32.7.1 游標(biāo)的基礎(chǔ)知識 418
32.7.2 創(chuàng)建游標(biāo) 418
32.7.3 打開游標(biāo) 418
32.7.4 使用游標(biāo) 419
32.7.5 關(guān)閉游標(biāo) 419
32.7.6 在PHP 中使用游標(biāo) 420
32.8 小結(jié) 420
第33 章 索引與搜索 421
33.1 數(shù)據(jù)庫索引 421
33.1.1 主鍵索引 421
33.1.2 唯一索引 422
33.1.3 普通索引 423
33.1.4 全文索引 424
33.1.5 索引最佳實踐 427
33.2 基于表單的搜索 427
33.2.1 執(zhí)行簡單搜索 428
33.2.2 擴展搜索功能 429
33.2.3 執(zhí)行全文搜索 430
33.3 小結(jié) 431
第34 章 事務(wù) 432
34.1 什么是事務(wù) 432
34.2 MySQL 事務(wù)功能 432
34.2.1 系統(tǒng)要求 432
34.2.2 表格創(chuàng)建 433
34.3 一個示例項目 433
34.3.1 創(chuàng)建表格并添加樣本數(shù)據(jù) 434
34.3.2 執(zhí)行示例事務(wù) 434
34.3.3 使用建議 436
34.4 使用PHP 創(chuàng)建事務(wù)型應(yīng)用 436
34.5 小結(jié) 437
第35 章 導(dǎo)入與導(dǎo)出數(shù)據(jù) 438
35.1 樣本表格 438
35.2 使用數(shù)據(jù)分隔 438
35.3 導(dǎo)入數(shù)據(jù) 439
35.3.1 使用LOAD DATA INFILE 導(dǎo)入數(shù)據(jù) 439
35.3.2 使用mysqlimport 導(dǎo)入數(shù)據(jù) 441
35.3.3 使用PHP 加載表數(shù)據(jù) 443
35.4 導(dǎo)出數(shù)據(jù) 444
35.5 小結(jié) 446
你還可能感興趣
我要評論
|