MySQL Cookbook(中文版)

《MySQL Cookbook》的作者是美國人迪布瓦(Paul DuBois),瀚海時光團隊擔任編譯,該書分為20個章節,有大量使用Perl、PHP、Python、Java甚至Ruby來檢索並顯示數據的新示例,還增加了子查詢、視圖、存儲過程、觸發器和事件等內容。為各個層次的、沒有時間和精力來從頭解決MySQL問題的用戶提供了大量簡練、精闢的代碼段和可用的示例,每節都闡述了代碼應該如何工作及原因所在。

內容介紹

《MySQL Cookbook(中文版)》為各個層次的、沒有時間和精力來從頭解決MySQL問題的用戶提供了大量簡練、精闢的代碼段和可用的示例,每節都闡述了代碼應該如何工作及原因所在。《MySQL Cookbook(中文版)》在目前仍然廣為流行的MySQL 4.1的基礎上加入了MySQL 5.0的內容及它強大的新特性。讀者將掌握用MySQL客戶端程式執行SQL查詢的方法,以及通過API編寫與MySQL伺服器互動程式的方法。書中有大量使用Perl、PHP、Python、Java甚至Ruby來檢索並顯示數據的新示例,還增加了子查詢、視圖、存儲過程、觸發器和事件等內容。

作者介紹

作者:(美國)迪布瓦(Paul DuBois) 譯者:瀚海時光團隊
Paul DuBois是MySQL線上參考手冊的第一批貢獻者之一,這是在20世紀90年代後期MySQL的開放年代支持管理員和開發者的一個文檔項目。他已經撰寫了多本關於MySQL的著作,包括《MySQL Cookbook 第1版》。

作品目錄

序言
第1章:使用mysql客戶端程式
1.0 引言
1.1 建立MySQL用戶賬號
1.2 創建資料庫和樣表
1.3 啟動和停止mysql
1.4 使用可選項檔案來指定連線參數
1.5 保護選項檔案以阻止其他用戶讀取
1.6 混合使用命令行和選項檔案參數
1.7 找不到mysql時該怎么做
1.8 發起SQL語句
1.9 取消一條部分輸入的語句
1.10 重複和編輯SQL語句
1.11 自動完成資料庫名和表名
1.12 讓mysql從檔案中讀取語句
1.13 讓mysql從其他程式讀取語句
1.14 一行輸入SQL
1.15 使用拷貝貼上作為mysql輸入源
1.16 預防查詢輸出超出螢幕範圍
1.17 傳送查詢輸出到檔案或程式
1.18 選擇表格或制表符定界的查詢輸出格式
1.19 指定任意的輸出列分隔設定
1.20 生成HTML或XML輸出
1.21 在查詢輸出中禁止列頭部
1.22 使長輸出行更具可讀性
1.23 控制mysql的繁冗級別
1.24 記錄互動式的mysql會話
1.25 以之前執行的語句創建mysql腳本
1.26 在SQL語句中使用用戶自定義的變數
1.27 為查詢輸出行計數
1.28 將mysql用作計算器
1.29 在Shell腳本中使用mysql
第2章:編寫基於MySQL的程式
2.0 引言
2.1 連線、選擇資料庫及下線
2.2 查錯
2.3 編寫庫檔案
2.4 發起語句並檢索結果
2.5 處理語句中的特殊字元和NULL值
2.6 處理標識符中特殊字元
2.7 識別結果集中的NULL值
2.8 獲取連線參數的技術
2.9 結論和建議
第3章:從表中查詢數據
3.0 引言
3.1 指定查詢列/從指定列中查詢
3.2 指定查詢行
3.3 格式化顯示查詢結果
3.4 使用列別名來簡化程式
3.5 合併多列來構建複合值
3.6 Where表達式中的列別名
3.7 調試比較表達式
3.8 使查詢結果唯一化
3.9 如何處理NULL 值
3.10 在用戶程式中使用NULL作為比較參數
3.11 結果集排序
3.12 使用視圖來簡化查詢
3.13 多表查詢
3.14 從查詢結果集頭或尾取出部分行
3.15 在結果集中間選取部分行
3.16 選擇合適的LIMIT參數
3.17 當LIMIT需要“錯誤”的排列順序時做什麼
3.18 從表達式中計算LIMIT值
第4章:表管理
4.0 引言
4.1 克隆表
4.2 將查詢結果保存到表中
4.3 使用臨時表
4.4 檢查或改變某個表的存儲引擎
4.5 生成唯一的表名
第5章:與字元串共舞
5.0 引言
5.1 字元串屬性
5.2 選擇字元串的數據類型
5.3 正確設定客戶端連線的字元集
5.4 串字母
5.5 檢查一個字元串的字元集或字元排序
5.6 改變字元串的字元集或字元排序
5.7 更改字元串字母的大小寫
5.8 更改字元串大小寫失敗的情況
5.9 控制字元串比較中的大小寫敏感
5.10 使用SQL模式進行模式匹配
5.11 使用正則表達式進行模式匹配
5.12 模式匹配中的大小寫問題
5.13 分割或者串聯字元串
5.14 查詢子串
5.15 使用FULLTEXT查詢
5.16 用短語來進行FULLTEXT查詢
5.17 要求或禁止FULLTEXT搜尋單詞
5.18 用FULLTEXT索引來執行詞組查詢
第6章:使用日期和時間
6.0 引言
6.1 選擇合適的日期或者時間變數類型
6.2 修改MySQL中的日期格式
6.3 設定客戶端時區
6.4 獲取當前日期或時間
6.5 使用TIMESTAMP來跟蹤行修改時間
6.6 從日期或者時間值中分解出各部分值
6.7 合成日期或者時間值
6.8 在時間數據類型和基本單位間進行轉換
6.9 計算兩個日期或時間之間的間隔
6.10 增加日期或時間值
6.11 計算年齡
6.12 將一個日期和時間值切換到另一個時區
6.13 找出每月的第一天,最後一天或者天數
6.14 通過子串替換來計算日期
6.15 計算某個日期為星期幾
6.16 查出給定某周的某天的日期
6.17 執行閏年計算
6.18 接近但不是ISO格式的日期格式
6.19 將日期或時間當成數值
6.20 強制MySQL將字元串當作時間值
6.21 基於時間特性來查詢行
第7章:排序查詢結果
7.0 引言
7.1 使用ORDER BY命令排序查詢結果
7.2 使用表達式排序
7.3 顯示一組按照其它屬性排序的值
7.4 字元串排序的大小寫區分控制
7.5 基於日期的排序
7.6 按日曆排序
7.7 按周曆排序
7.8 按時鐘排序
7.9 按數據列的子串排序
7.10 按固定長度的子串排序
7.11 按可變長度的子串排序
7.12 按域名順序排列主機名
7.13 按照數字順序排序點分式IP位址
7.14 將數值移動到排序結果的頭部或尾部
7.15 按照用戶定義排序
7.16 排序枚舉數值
第8章:生成摘要
8.0 引言
8.1 使用COUNT函式生成摘要
8.2 使用MIN()和MAX()函式生成摘要
8.3 使用SUM()和AVG()函式生成摘要
8.4 使用DISTINCT函式消除重複
8.5 查找數值相關的最大值和最小值
8.6 控制MIN()函式和MAX()函式的字元串大小寫區分
8.7 將摘要劃分為子群
8.8 摘要與空值
8.9 使用確定的特性選擇組群
8.10 使用計數確定數值是否唯一
8.11 使用表達式結果分組
8.12 分類無類別數據
8.13 控制摘要顯示順序
8.14 查找最小或最大的摘要數值
8.15 基於日期的摘要
8.16 同時使用每一組的摘要和全體的摘要
8.17 生成包括摘要和列表的報告
第9章:獲取和使用元數據
9.0 引言
9.1 獲取受語句影響的數據行數目
9.2 獲取設定元數據的結果
9.3 確定一條語句是否生成了結果集
9.4 使用元數據來格式化查詢輸出
9.5 列舉或檢查資料庫或表的擴展
9.6 訪問表數據列定義
9.7 取得ENUM和SET數據列信息
9.8 在應用程式中使用表結構信息
9.9 獲取伺服器元數據
9.10 編寫適合MySQL伺服器版本的應用程式
9.11 確定默認資料庫
9.12 監測MySQL伺服器
9.13 確定伺服器支持哪個存儲引擎
第10章:數據導入導出
10.0 引言
10.1 使用LOAD DATA和mysqlimport導入數據
10.2 指定數據檔案位置
10.3 指定數據檔案的結構
10.4 處理引號和特殊字元
10.5 導入CSV檔案
10.6 讀取不同作業系統的檔案
10.7 處理重複的鍵值
10.8 獲取關於錯誤輸入數據的診斷信息
10.9 跳過數據檔案行
10.10 指定輸入列順序
10.11 在插入輸入值之前對數據檔案進行預處理
10.12 忽略數據檔案列
10.13 從MySQL中導出查詢結果
10.14 將表導出為文本檔案
10.15 以SQL格式導出表內容或定義
10.16 將表或資料庫拷貝到另一個伺服器
10.17 編寫你自己的導出程式
10.18 將數據檔案從一種格式轉化為另一種格式
10.19 提取和重排數據檔案列
10.20 使用SQL模式來控制錯誤的輸入數據處理
10.21 驗證並轉換數據
10.22 使用模式匹配來驗證數據
10.23 使用模式來匹配廣泛的內容類型
10.24 使用模式來匹配數值
10.25 使用模式來匹配日期或時間
10.26 使用模式來匹配E-mail地址或URL
10.27 使用表元數據來驗證數據
10.28 使用一個查找表來驗證數據
10.29 將兩個數字的年份值轉化為四位形式
10.30 驗證日期和時間合法性
10.31 編寫時間處理工具
10.32 使用不完整的日期
10.33 導入非ISO格式日期值
10.34 使用非ISO格式導出日期值
10.35 導入和導出NULL值
10.36 根據數據檔案猜測表結構
10.37 在MySQL和Access之間交換數據
10.38 在MySQL和Microsoft Excel之間交換數據
10.39 將輸出結果導出為XML
10.40 將XML導入MySQL
10.41 尾聲
第11章:生成和使用序列
11.0 引言
11.1 創建一個序列列並生成序列值
11.2 為序列列選擇數據類型
11.3 序列生成的行刪除的效果
11.4 查詢序列值
11.5 對一個已有的序列進行重新計數
11.6 擴展序列列的取值範圍
11.7 序列頂部數值的再使用
11.8 確保各行按照給定順序重編號
11.9 從某個特定值開始一個序列
11.10 序列化一個未序列的表
11.11 使用AUTO_INCREMENT欄來創建多重序列
11.12 管理多重並發AUTO_INCREMENT數值
11.13 使用AUTO_INCREMENT值將表進行關聯
11.14 將序列生成器用作計數器
11.15 創建循環序列
11.16 按行順序輸出數列查詢
第12章:使用多重表
12.0 引言
12.1 在表中找到與另一個表中的行相匹配的行
12.2 查找與其他表不匹配的行
12.3 將表與自身進行比較
12.4 產生主從列表和摘要
12.5 枚舉多對多的關係
12.6 查找每組行中含有最大或最小值的行
12.7 計算隊伍排名
12.8 使用連線補全或識別列表的缺口
12.9 計算連續行的差值
12.10 發現累積和與動態均值
12.11 使用連線控制查詢輸出的順序
12.12 在單個查詢中整合幾個結果集
12.13 識別並刪除失配或獨立行
12.14 為不同資料庫間的表執行連線
12.15 同時使用不同的MySQL伺服器
12.16 在程式中引用連線的輸出列名稱
第13章:統計技術
13.0 引言
13.1 計算描述統計
13.2 分組描述統計
13.3 產生頻率分布
13.4 計數缺失值
13.5 計算線性回歸和相關係數
13.6 生成隨機數
13.7 隨機化行集合
13.8 從行集合中隨機選擇條目
13.9 分配等級
第14章:處理重複項
14.0 引言
14.1 防止在表中發生重複
14.2 處理向表中裝載行時出現的重複錯誤
14.3 計數和識別重複項
14.4 從表中消除重複項
14.5 從自連線的結果中消除重複
第15章:執行事務
15.0 引言
15.1 使用事務存儲引擎
15.2 使用SQL執行事務
15.3 在程式中執行事務
15.4 在Perl程式中使用事務
15.5 在Ruby程式中使用事務
15.6 在PHP程式中使用事務
15.7 在Python程式中使用事務
15.8 在Java程式中使用事務
15.9 使用事務的替代方法
第16章:使用存儲例程、觸發器和事件
16.0 引言
16.1 創建複合語句對象(此節翻譯有誤)
16.2 使用存儲函式封裝計算
16.3 使用存儲過程來“返回”多個值
16.4 用觸發器來定義動態的默認列值
16.5 為其他日期和時間類型模擬TIMESTAMP屬性
16.6 使用觸發器記錄表的變化
16.7 使用事件調度資料庫動作
第17章:關於Web套用中MySQL的介紹
17.0 引言
17.1 Web頁面產生的基本原則
17.2 使用Apache運行web腳本
17.3 使用Tomcat運行Web腳本
17.4 在Web輸出中編碼特殊字元
第18章:在Web頁面中混合查詢結果
18.0 引言
18.1 以段落文本顯示查詢結果
18.2 以列表形式顯示查詢結果
18.3 以表格形式顯示查詢結果
18.4 將查詢結果顯示為超連結
18.5 根據資料庫內容中創建導航索引
18.6 存儲圖片或其他二進制數據
18.7 檢索圖片或其他二進制數據
18.8 提供標語廣告
18.9 提供可下載的查詢結果
18.10 使用模板系統生成web頁面
第19章:用MySQL處理Web輸入
19.0 引言
19.1 編寫腳本生成Web表單
19.2 根據資料庫內容構建單取表單元素
19.3 根據資料庫內容構建多取表單元素
19.4 將一條資料庫記錄導入表單
19.5 收集Web輸入
19.6 驗證Web輸入
19.7 將Web輸入存入資料庫
19.8 處理檔案上傳
19.9 執行搜尋並顯示結果
19.10 生成上一頁和下一頁連結
19.11 生成點擊排序的表格頭單元
19.12 Web頁面訪問計數
19.13 Web頁面訪問日誌
19.14 使用MySQL存儲Apache日誌
第20章:使用基於MySQL的Web會話管理
20.0 引言
20.1 在Perl應用程式中使用基於MySQL的會話
20.2 在Ruby應用程式中使用基於MySQL的存儲
20.3 在PHP會話管理器中使用基於MySQL的存儲
20.4 在Tomcat中為會話支持存儲使用MySQL
附錄A:獲取MySQL軟體
附錄B:從命令行執行程式
附錄C:JSP和Tomcat知識的初步內容
附錄D:參考資料
索引

相關詞條

相關搜尋

熱門詞條

聯絡我們