《零點起飛學MySQL》是一本MySQL的入門教程,是手把手教會讀者使用該數據庫的最佳入門教程。本書概念清楚,用穿插類比和圖解的方式進行講解,可以讓讀者更加直觀地理解和掌握MySQL的各個知識點。本書附帶1張光盤,收錄了本書配套多媒體教學視頻及涉及的源文件,便于讀者高效、直觀地學習。
《零點起飛學MySQL》共5篇,包括20章內容。第1篇講解MySQL的基礎,包括MySQL數據庫的安裝、數據庫的使用、數據表的使用及約束的使用;第2篇講解SQL語句在數據表中的使用,主要包括數據的添加、修改、刪除和查詢操作;第3篇介紹MySQL數據庫常用的一些對象,包括自定義函數、視圖、存儲過程和觸發器等;第4篇為MySQL應用實戰篇,介紹如何使用最流行的C#、Java和PHP連接MySQL數據庫的方法和相關項目案例;第5篇為拓展應用篇,介紹MySQL日志和數據庫性能優化。
本書適合所有想學習MySQL數據庫技術的初、中級讀者快速入門,也適合大中專院校的師生和培訓班的學員作為教材使用。
“零點起飛學編程”其他圖書推薦閱讀:
《零點起飛學C語言》
《零點起飛學Java》
《零點起飛學C++》
《零點起飛學Visual C++》
《零點起飛學Visual Basic》
《零點起飛學C#》
《零點起飛學ASP.NET》
《零點起飛學PHP》
《零點起飛學HTML+CSS》
《零點起飛學JavaScript+jQuery》
《零點起飛學Java Web開發》
《零點起飛學Android開發》
《零點起飛學iPhone開發》
《零點起飛學Excel VBA》
《零點起飛學Linux C編程》
《零點起飛學SQL Server》
《零點起飛學MySQL》
《零點起飛學Oracle》
《零點起飛學MySQL》特點: 數據庫技術暢銷書作者親自執筆,帶領讀者輕松掌握MySQL數據庫 視頻講解:提供10.5小時配套多媒體教學視頻 循序漸進:基礎·進階·實戰 科學編排:基本語法·典型實例·編程練習·項目實戰 學練結合:218個實例、4個項目案例、153個練習題 有問必答:提供QQ群、郵件和論壇答疑服務 教學服務:提供教學PPT、習題解答
MySQL是輕型免費的數據庫,得到了大部分中小企業甚至大型企業的青睞。它是目前最流行的數據庫之一,與其他數據庫產品一樣,都可以使用標準的SQL語句。此外,它還有很多免費的版本供使用者選擇。目前,在很多中小型網站和軟件系統中都普遍應用。 MySQL數據庫憑借其擴平臺的特性,能夠適應目前主流的多個操作平臺,比如:Windows操作系統、Linux操作系統、蘋果系列的操作系統等。因此,在Linux環境下使用數據庫時,選用MySQL就會更多一些。
為了能夠讓初學者快速掌握MySQL的使用,本書介紹MySQL數據庫的最新版本MySQL 5.5,從MySQL數據庫的安裝開始講起,循序漸進地講解MySQL數據庫操作的基本SQL語句及數據庫的管理,在本書的后面還分別使用目前比較主流的C#、Java和PHP語言來講解如何連接MySQL數據庫等知識。為達到更好的學習效果,本書還對重點內容特別錄制了多媒體教學視頻,輔助讀者學習。
本書有何特色
本書將知識范圍鎖定在了初、中級部分,以大量的實例進行示范和解說,其特點主要體現在以下幾個方面:
* 重點內容配有大量多媒體教學視頻輔助讀者學習,高效、直觀。
* 編排采用循序漸進的方式,適合初、中級學者逐步掌握MySQL數據庫的使用。
* 重點講述MySQL的入門和進階知識,并為讀者理解和實踐奠定基礎。
* 多采用語法與示例一對一的方式來講解每一個語法點,方便讀者的理解。
* 采用大量實例,講解MySQL中基本的SQL語句和圖形工具的使用。
* 所有實例都具有代表性和實際意義,著重解決工作中的實際問題。
* 在實際操作比較多的章節中,都安排了一個綜合實例,方便讀者掌握所學內容。
* 對于學習MySQL時比較容易出現的問題進行了詳細的說明。
* 介紹了C#、Java和PHP連接MySQL的知識,幫助讀者體驗數據庫的實際應用。
* 結合大中專院校的數據庫教學實踐編寫,適合學生進行數據庫應用實踐。
* 每章后給出了大量的習題,幫助讀者練習,鞏固和提高所學的知識。
本書內容安排
本書分5篇,共20章,循序漸進地講述了MySQL的安裝方法和MySQL的基礎知識,從基本概念到具體實踐,從新特性的講解到具體操作,從簡單的SQL語句編寫到復雜的數據庫管理,從抽象概念到實際應用,全方位地完成了MySQL的講解。
第1篇 MySQL基礎(第1~4章)
首先講解了MySQL數據庫在Windows環境和Linux環境下的安裝過程,以及每一個數據庫版本的說明。然后講解數據庫的創建、修改數據庫的字符集以及刪除數據庫,數據表的創建、修改數據表以及刪除數據表。最后,講解了約束在MySQL數據表的使用。通過對數據庫、數據表以及約束的講解,讓讀者對MySQL數據庫有一個概括的了解。
第2篇 操作表中的數據(第5~8章)
在講述了MySQL的基礎知識后,本篇主要講解如何操作表中的數據。主要包括數據表中數據的添加、修改以及刪除;數據表中數據的簡單查詢和復雜查詢,以及在查詢語句中使用函數來方便數據查詢。
第3篇 數據庫使用進階(第9~14章)
在有了數據庫表操作的基礎后,就可以靈活地使用SQL語句來更好地使用和管理數據庫了。在本篇中主要講解了MySQL中視圖、索引、自定義函數、存儲過程、觸發器的使用,以及對數據庫權限的管理和數據備份。
第4篇 數據庫應用實戰(第15~18章)
有了前3篇的基礎后,在本篇中分別使用C#、Java和PHP語言連接MySQL數據庫。讀者不僅能學會如何用開發語言與MySQL打交道,而且還能通過案例的方式了解到各種數據操作。
第5篇 拓展應用(第19~20章)
前面對數據庫已經有了基本知識,如果讀者還想提高一下自己,可以學習下MySQL的日志和性能優化部分,這是提高數據庫管理水平的關鍵。
本書光盤內容
* 本書重點內容的配套教學視頻;
* 本書實例涉及的源代碼;
本書讀者對象
本書由淺入深,由理論到實踐,尤其適合初級讀者逐步學習和完善自己的知識結構。
* 從未接觸過MySQL的自學人員;
* 有志于使用MySQL開發的初學者;
* 學習過其他數據庫,但是還想學習MySQL數據庫的開發者;
* 高等院校計算機相關專業的老師和學生;
* 各大中專院校的在校學生和相關授課老師;
* 準備從事軟件開發的求職者;
* 參與畢業設計的學生;
* 其他編程愛好者。
本書閱讀建議
* 作為一本入門教程,建議沒有基礎的讀者,從前至后順次閱讀,盡量不要跳躍。
* 書中的實例和示例建議讀者都要親自上機動手實踐,學習效果更好。
* 課后習題都動手做一做,以檢查自己對本章內容的掌握程度,如果不能順利完成,建議回過頭來重新學習一下本章內容。
* 學習每章內容時,建議讀者先仔細閱讀書中的講解,然后再結合本章教學視頻,學習效果更佳。
本書作者
本書由秦婧、劉存勇主筆編寫,其他參與編寫的人員有畢夢飛、蔡成立、陳濤、陳曉莉、陳燕、崔棟棟、馮國良、高岱明、黃成、黃會、紀奎秀、江瑩、靳華、李凌、李勝君、李雅娟、劉大林、劉惠萍、劉水珍、馬月桂、閔智和。
閱讀本書的過程中若有疑問,請和我們聯系。
編者
秦婧,畢業于東北大學,獲博士學位。從事軟件開發工作8年,有4年多的軟件開發和數據庫方面的教學經驗。從2004至今,負責開發的主要項目涉及了醫療、電力以及環保等大型項目,同時也開發了學校的網站以及學生選課的項目。所從事的教學工作主要包括C#語言、數據庫技術、Java語言等軟件開發課程。編寫并出版過Oracle、PL/SQL、SQL Server等數據庫技術圖書,其中所編寫的Oracle類圖書多次加印,長期雄踞數據庫圖書銷售排行榜的前列。
第1篇 MySQL基礎
第1章 數據庫的安裝( 教學視頻:25分鐘)
1.1 MySQL概述
1.1.1 MySQL特性以及歷史
1.1.2 MySQL的獲取
1.2 MySQL的安裝
1.2.1 Windows中安裝MySQL
1.2.2 Linux中安裝MySQL
1.3 本章小結
1.4 本章習題
第2章 數據庫的創建、修改及刪除( 教學視頻:19分鐘
2.1 創建數據庫
2.1.1 創建數據庫的基本語法
2.1.2 使用語句創建數據庫
2.1.3 使用圖形界面創建數據庫
2.2 修改數據庫
2.2.1 使用語句修改數據庫使用的字符集
2.2.2 使用圖形界面修改數據庫使用的字符集
2.3 刪除數據庫
2.3.1 刪除數據庫的基本語法
2.3.2 使用語句刪除數據庫
2.3.3 使用圖形界面刪除數據庫
2.4 數據庫使用實例
2.5 本章小結
2.6 本章習題
第3章 數據表的創建、修改及刪除( 教學視頻:35分鐘
3.1 數據類型
3.1.1 數值類型
3.1.2 字符串類型
3.1.3 日期時間類型
3.1.4 其他數據類型
3.2 創建數據表
3.2.1 創建數據表的語法
3.2.2 使用語句創建數據表
3.2.3 使用圖形界面創建數據表
3.3 修改數據表
3.3.1 修改數據表的語法
3.3.2 使用語句修改數據表
3.3.3 使用圖形界面修改數據表
3.4 刪除數據表
3.4.1 刪除數據表的語法
3.4.2 使用語句刪除數據表
3.4.3 使用圖形界面刪除數據表
3.5 數據表使用實例
3.6 本章小結
3.7 本章習題
第4章 約束( 教學視頻:42分鐘)
4.1 約束的類型
4.2 主鍵約束
4.2.1 在創建表時設置主鍵約束
4.2.2 在修改表時添加主鍵約束
4.2.3 刪除主鍵約束
4.3 外鍵約束
4.3.1 在創建表時設置外鍵約束
4.3.2 在修改表時添加外鍵約束
4.3.3 刪除外鍵約束
4.4 默認值約束
4.4.1 在創建表時設置默認值約束
4.4.2 在修改表時添加默認值約束
4.4.3 刪除默認值約束
4.5 非空約束
4.5.1 在創建表時設置非空約束
4.5.2 在修改表時添加非空約束
4.6 檢查約束
4.6.1 在創建表時為列設置檢查約束
4.6.2 在修改表時為一個列添加檢查約束
4.7 唯一約束
4.7.1 在創建表時設置唯一約束
4.7.2 在修改表時添加唯一約束
4.7.3 刪除唯一約束
4.8 本章小結
4.9 本章習題
第2篇 操作表中的數據
第5章 使用DML語言操作數據表( 教學視頻:45分鐘)
5.1 使用INSERT語句向數據表中添加數據
5.1.1 INSERT語句的基本語法形式
5.1.2 給表中指定字段添加數據
5.1.3 復制其他表中的數據
5.1.4 為表添加多條數據
5.2 使用UPDATE語句修改表中的數據
5.2.1 UPDATE語句的基本語法形式
5.2.2 修改表中的全部數據
5.2.3 根據條件修改表中的數據
5.2.4 根據順序修改數據表中的數據
5.2.5 限制行數的修改
5.3 使用DELETE語句刪除表中的數據
5.3.1 DELETE語句的基本語法形式
5.3.2 刪除表中的全部數據
5.3.3 根據條件刪除表中的數據
5.3.4 按指定順序刪除數據
5.3.5 限制行數的刪除
5.4 使用圖形界面操作數據表
5.5 數據表數據操作綜合實例
5.6 本章小結
5.7 本章習題
第6章 簡單查詢與子查詢( 教學視頻:37分鐘)
6.1 運算符
6.1.1 算術運算符
6.1.2 比較運算符
6.1.3 邏輯運算符
6.1.4 位運算符
6.2 簡單查詢
6.2.1 基本語法
6.2.2 查詢表中的全部數據
6.2.3 查詢指定字段的數據
6.2.4 在查詢中使用別名列
6.2.5 根據單一條件查詢數據
6.2.6 帶LIKE條件的查詢
6.2.7 根據多個條件查詢數據
6.2.8 對查詢結果排序
6.2.9 限制查詢結果的行數
6.3 聚合函數
6.3.1 最大值函數MAX
6.3.2 最小值函數MIN
6.3.3 平均值函數AVG
6.3.4 求和函數SUM
6.3.5 計數函數COUNT
6.4 子查詢
6.4.1 子查詢中常用的操作符
6.4.2 使用IN的子查詢
6.4.3 使用EXISTS的子查詢
6.4.4 使用ANY的子查詢
6.5 本章小結
6.6 本章習題
第7章 復雜查詢( 教學視頻:43分鐘)
7.1 分組查詢
7.1.1 對單列進行分組查詢
7.1.2 使用HAVING的分組查詢
7.1.3 對多列進行分組查詢
7.1.4 在分組查詢中使用ORDER BY
7.2 多表查詢
7.2.1 等值連接
7.2.2 笛卡爾積
7.2.3 外連接
7.2.4 內連接
7.3 合并查詢結果
7.3.1 使用UNION關鍵字合并查詢結果
7.3.2 對合并后的查詢結果排序
7.3.3 限制組合查詢結果的行數
7.4 綜合實例
7.5 本章小結
7.6 本章習題
第8章 函數( 教學視頻:56分鐘)
8.1 數值類型函數
8.1.1 絕對值函數abs
8.1.2 取余數函數mod
8.1.3 求平方根函數sqrt
8.1.4 獲取隨機數的函數rand
8.1.5 四舍五入函數round
8.1.6 符號函數sign
8.1.7 冪運算函數power
8.1.8 對數運算函數log
8.1.9 pi函數
8.1.10 三角函數
8.1.11 獲取最小整數ceil、ceiling
8.2 字符串函數
8.2.1 合并字符串的函數concat
8.2.2 計算字符串長度的函數length
8.2.3 字母小寫轉大寫函數upper
8.2.4 字母大寫轉小寫函數lower
8.2.5 獲取指定長度的字符串的函數left和right
8.2.6 填充字符串的函數lpad和rpad
8.2.7 刪除指定字符的函數trim
8.2.8 刪除字符串兩端空格函數ltrim,rtrim
8.2.9 重復生成字符串的函數repeat
8.2.10 空格函數space
8.2.11 替換函數replace
8.2.12 替換字符串的函數insert
8.2.13 比較字符串大小的函數strcmp
8.2.14 獲取子串的函數substring
8.2.15 字符串逆序的函數reverse
8.2.16 返回指定字符串位置的函數field
8.3 日期和時間函數
8.3.1 返回指定日期對應的工作日索引dayofweek和weekday
8.3.2 返回指定日期所在月中的日期索引dayofmonth
8.3.3 返回指定日期所在年中的日期索引dayofyear
8.3.4 返回指定日期對應的月份month
8.3.5 返回指定日期對應的月名稱monthname
8.3.6 返回指定日期對應的工作日名稱dayname
8.3.7 返回指定日期對應的季度quarter
8.3.8 返回指定日期對應的年份year
8.3.9 返回指定時間中的小時hour
8.3.10 返回指定時間中的分鐘minute
8.3.11 返回指定時間中的秒數second
8.3.12 增加月份函數period_add
8.3.13 取月份差的函數period_diff
8.3.14 返回當前日期函數curdate和current_date
8.3.15 返回當前時間函數curtime和current_time
8.3.16 獲取當前的時間日期函數now和sysdate
8.3.17 秒轉換成時間函數sec_to_time
8.3.18 時間轉換成秒函數time_to_sec
8.4 其他函數
8.4.1 返回當前用戶名函數session_user
8.4.2 返回當前數據庫名稱函數database
8.4.3 返回字符串MD5校驗和函數MD5
8.5 本章小結
8.6 本章習題
第3篇 數據庫使用進階
第9章 視圖( 教學視頻:23分鐘)
9.1 視圖介紹
9.2 創建視圖
9.2.1 創建視圖語法
9.2.2 單源表視圖的創建
9.2.3 多源表視圖的創建
9.3 修改視圖
9.3.1 修改視圖語法
9.3.2 使用語句更新視圖
9.3.3 使用工具更新視圖
9.4 刪除視圖
9.4.1 使用SQL語句刪除視圖
9.4.2 使用工具刪除視圖
9.5 查看視圖
9.5.1 查看視圖的字段信息
9.5.2 查看創建視圖的語句
9.6 本章小結
9.7 本章習題
第10章 索引( 教學視頻:21分鐘)
10.1 認識索引
10.1.1 什么是索引
10.1.2 索引分類
10.1.3 索引的作用
10.1.4 索引注意事項
10.2 管理索引
10.2.1 普通索引創建
10.2.2 唯一索引創建
10.2.3 主鍵索引創建
10.2.4 查看索引
10.2.5 刪除索引
10.3 本章小結
10.4 本章習題
第11章 自定義函數( 教學視頻:30分鐘)
11.1 創建自定義函數
11.1.1 創建函數的語法
11.1.2 使用語句創建函數
11.1.3 使用圖形界面創建函數
11.2 函數的管理
11.2.1 使用命令刪除函數
11.2.2 圖形界面下刪除函數
11.2.3 圖形界面下修改函數
11.3 本章小結
11.4 本章習題
第12章 存儲過程( 教學視頻:35分鐘)
12.1 存儲過程介紹
12.2 創建存儲過程
12.2.1 存儲過程的語法
12.2.2 命令行中創建存儲過程
12.2.3 利用工具創建存儲過程
12.2.4 存儲過程的參數
12.3 修改存儲過程
12.4 刪除存儲過程
12.5 存儲過程中的變量
12.6 結構控制語句
12.6.1 IF條件控制語句
12.6.2 CASE條件控制語句
12.6.3 LOOP循環控制語句
12.6.4 WHILE語句的使用
12.7 本章小結
12.8 本章習題
第13章 觸發器( 教學視頻:23分鐘)
13.1 觸發器介紹
13.2 創建觸發器
13.2.1 觸發器語法
13.2.2 觸發器組成和觸發事件
13.2.3 利用SQL命令創建觸發器
13.2.4 利用圖形工具創建觸發器
13.3 管理觸發器
13.3.1 觸發器的刪除
13.3.2 觸發器的修改
13.4 本章小結
13.5 本章習題
第14章 數據庫的權限與備份( 教學視頻:27分鐘)
14.1 用戶管理
14.1.1 初始用戶
14.1.2 創建用戶
14.1.3 用戶權限
14.2 數據的備份與恢復
14.2.1 備份操作
14.2.2 恢復操作
14.3 本章小結
14.4 本章習題
第4篇 數據庫應用實戰
第15章 使用C#連接MySQL( 教學視頻:26分鐘)
15.1 ADO.NET介紹
15.1.1 詳解5個重要的類
15.1.2 使用C#語言對MySQL數據庫進行操作
15.2 學員報名系統的實現
15.2.1 學員報名的數據表設計
15.2.2 創建項目結構
15.2.3 添加學員信息
15.2.4 管理學員信息
15.3 本章小結
第16章 在Java中連接MySQL( 教學視頻:23分鐘)
16.1 JDBC簡介
16.2 使用JDBC Driver連接MySQL
16.2.1 下載連接MySQL數據庫的JDBC Driver
16.2.2 利用JDBC Driver連接MySQL數據庫
16.3 利用JDBC-ODBC橋接數據庫
16.3.1 配置ODBC數據源
16.3.2 使用JDBC-ODBC橋連接MySQL
16.4 本章小結
第17章 PHP訪問MySQL數據庫( 教學視頻:32分鐘)
17.1 PHP連接MySQL數據庫
17.1.1 Windows操作系統下配置PHP
17.1.2 Linux操作系統下配置PHP
17.1.3 連接MySQL數據庫
17.2 PHP操作MySQL數據庫
17.2.1 執行SQL語句
17.2.2 處理查詢結果
17.2.3 獲取查詢結果的字段名
17.2.4 一次執行多個SQL語句
17.2.5 處理帶參數的SQL語句
17.2.6 關閉創建的對象
17.3 PHP備份與還原MySQL數據庫
17.3.1 PHP備份MySQL數據庫
17.3.2 PHP還原MySQL數據庫
17.4 本章小結
第18章 學員管理系統( 教學視頻:30分鐘)
18.1 系統概述
18.2 系統功能
18.3 數據庫設計
18.3.1 設計表
18.3.2 設計索引
18.3.3 設計視圖
18.3.4 設計觸發器
18.4 系統實現
18.4.1 構建工程
18.4.2 訪問和操作MySQL數據庫的代碼
18.5 用戶管理模塊
18.5.1 用戶登錄功能
18.5.2 修改密碼
18.6 學籍管理模塊
18.6.1 添加學員的學籍信息
18.6.2 查詢學員的學籍信息
18.6.3 修改學員的學籍信息
18.6.4 刪除學員的學籍信息
18.7 體檢管理模塊
18.8 成績管理模塊
18.9 證書管理模塊
18.10 本章小結
第5篇 拓 展 技 術
第19章 MySQL日志( 教學視頻:22分鐘)
19.1 日志簡介
19.2 二進制日志
19.2.1 啟動和設置二進制日志
19.2.2 查看二進制日志
19.2.3 刪除二進制日志
19.2.4 使用二進制日志還原數據庫
19.2.5 暫時停止二進制日志功能
19.3 錯誤日志
19.3.1 啟動和設置錯誤日志
19.3.2 查看錯誤日志
19.3.3 刪除錯誤日志
19.4 通用查詢日志
19.4.1 啟動和設置通用查詢日志
19.4.2 查看通用查詢日志
19.4.3 刪除通用查詢日志
19.5 慢查詢日志
19.5.1 啟動和設置慢查詢日志
19.5.2 查看慢查詢日志
19.5.3 刪除慢查詢日志
19.6 本章實例
19.9 本章小結
第20章 性能優化( 教學視頻:30分鐘)
20.1 優化簡介
20.2 優化查詢
20.2.1 分析查詢語句
20.2.2 索引對查詢速度的影響
20.2.3 使用索引查詢
20.2.4 優化子查詢
20.3 優化數據庫結構
20.3.1 將字段很多的表分解成多個表
20.3.2 增加中間表
20.3.3 增加冗余字段
20.3.4 優化插入記錄的速度
20.3.5 分析表、檢查表和優化表
20.4 優化MySQL服務器
20.4.1 優化服務器硬件
20.4.2 優化MySQL的參數
20.5 本章實例
20.8 本章小結
附錄A MySQL常用命令