這個MySQL基礎(chǔ)教程解釋一些基本的SQL語句。 如果這是您第一次使用關(guān)系數(shù)據(jù)庫管理系統(tǒng),本教程將為您提供使用MySQL數(shù)據(jù)庫服務(wù)器所需的一切內(nèi)容,例如查詢數(shù)據(jù),更新數(shù)據(jù),管理數(shù)據(jù)庫和創(chuàng)建表。
如果您已經(jīng)熟悉其他關(guān)系數(shù)據(jù)庫管理系統(tǒng)(如PostgreSQL,Oracle或Microsoft SQL Server等),則可以使用本教程來刷新您的知識,并了解MySQL的SQL方言與其他數(shù)據(jù)庫系統(tǒng)的不同之處。
本節(jié)將開始介紹和學(xué)習(xí)使用MySQL。我們將開始安裝MySQL,下載示例數(shù)據(jù)庫并將數(shù)據(jù)導(dǎo)入到MySQL服務(wù)器以進(jìn)行練習(xí)。
安裝MySQL數(shù)據(jù)庫服務(wù)器 - 演示如何在計算機(jī)上安裝MySQL數(shù)據(jù)庫服務(wù)器。
下載MySQL示例數(shù)據(jù)庫 - 介紹一個名稱為yiibaidb的MySQL示例數(shù)據(jù)庫,提供下載示例數(shù)據(jù)庫及ER圖。
將示例數(shù)據(jù)庫導(dǎo)入到MySQL數(shù)據(jù)庫服務(wù)器中 - 演示如何將示例數(shù)據(jù)庫(yiibaidb)導(dǎo)入到MySQL數(shù)據(jù)庫服務(wù)器中進(jìn)行練習(xí)。
本節(jié)將幫助您了解如何從MySQL數(shù)據(jù)庫服務(wù)器查詢數(shù)據(jù)。 我們將從一個簡單的SELECT語句開始,從單個表查詢數(shù)據(jù)。
SELECT語句中使用DISTINCT運(yùn)算符來消除結(jié)果集中的重復(fù)行。WHERE子句根據(jù)指定的條件過濾行記錄。AND運(yùn)算符以組合布爾表達(dá)式以形成用于過濾數(shù)據(jù)的復(fù)雜條件。OR運(yùn)算符,并展示如何將OR運(yùn)算符與AND運(yùn)算符組合以過濾數(shù)據(jù)。WHERE子句中使用IN運(yùn)算符來確定值是否匹配列表或子查詢中的指定值。BETWEEN運(yùn)算符來根據(jù)指定范圍查詢數(shù)據(jù)。LIMIT來限制SELECT語句返回的行數(shù)IS NULL運(yùn)算符測試值是否為NULL。ORDER BY子句排序結(jié)果集。還將介紹使用FIELD函數(shù)的自定義排序順序。ORDER BY子句,演示MySQL中的各種自然排序技術(shù)。NULL值來補(bǔ)充不匹配行。INNER JOIN或LEFT JOIN)連接同一表中的行記錄。UNION和UNION ALL操作符將兩個或多個多個SELECT語句的結(jié)果集合合并到一個結(jié)果集中。INTERSECT運(yùn)算符的方法。在本節(jié)中,將學(xué)習(xí)如何使用各種MySQL語句來在表上執(zhí)行插入,更新和刪除數(shù)據(jù)操作。
INSERT語句將數(shù)據(jù)插入到數(shù)據(jù)庫表中。INSERT IGNORE語句。UPDATE語句及其選項來更新數(shù)據(jù)庫表中的數(shù)據(jù)。INNER JOIN和LEFT JOIN的UPDATE JOIN語句執(zhí)行交叉表更新。DELETE語句從一個或多個表中刪除數(shù)據(jù)。DELETE CASCADE引用動作刪除子表中的數(shù)據(jù)。COMMIT和ROLLBACK來管理MySQL中的事務(wù)。本節(jié)介紹如何管理MySQL中最重要的數(shù)據(jù)庫對象,包括數(shù)據(jù)庫和表。
CREATE TABLE語句在數(shù)據(jù)庫中創(chuàng)建新表。ALTER TABLE語句來更改現(xiàn)有表的結(jié)構(gòu)。RENAME TABLE語句重命名表。ALTER TABLE DROP COLUMN語句從表中刪除一個或多個列。ALTER TABLE ADD COLUMN語句向現(xiàn)有表添加一個或多個列。DROP TABLE語句刪除現(xiàn)有表。TRUNCATE TABLE語句刪除表中的所有數(shù)據(jù)。UNIQUE索引來強(qiáng)制一個或多個列的值的唯一性。ZEROFILL和整數(shù)列的寬度屬性。DECIMAL數(shù)據(jù)類型存儲十進(jìn)制格式的精確值。BIT數(shù)據(jù)類型以及如何在MySQL中存儲位值。TINYINT(1)來處理布爾值。CHAR數(shù)據(jù)類型。VARCHAR數(shù)據(jù)類型的基本指南。TEXT數(shù)據(jù)類型存儲文本數(shù)據(jù)。TIME數(shù)據(jù)類型的功能,并向您演示如何使用一些有用的時間功能來處理時間數(shù)據(jù)。DATETIME數(shù)據(jù)類型和一些有用的函數(shù)來操作日期時間值。TIMESTAMP類型及其功能,調(diào)用自動初始化和自動更新,允許您為表定義自動初始化和自動更新的列。ENUM數(shù)據(jù)類型來存儲枚舉值。NOT NULL約束,并顯示如何為列定義NOT NULL約束或?qū)?code>NOT NULL約束添加到現(xiàn)有列。UNIQUE約束來強(qiáng)制表中列或一組列的值的唯一性。CHECK約束。LOAD DATA INFILE語句將CSV文件導(dǎo)入MySQL表。