這是 MySQL 資料庫系統 8.4 版的參考手冊,直至 8.4.0 版本。MySQL 8.4 的小版本之間的差異在本文件中以版本號 (8.4.x
) 標示。關於授權資訊,請參閱法律聲明。
由於 MySQL 8.4 與先前版本之間存在許多功能和其他差異,本手冊不適用於較舊版本的 MySQL 軟體。如果您使用的是較早版本的 MySQL 軟體,請參閱適當的手冊。例如,MySQL 8.0 參考手冊涵蓋了 MySQL 軟體發行版本的 8.0 錯誤修正系列。
由於本手冊作為參考之用,因此不提供關於 SQL 或關聯式資料庫概念的一般說明。它也不會教您如何使用作業系統或命令列直譯器。
MySQL 資料庫軟體正在不斷開發中,並且參考手冊也會頻繁更新。最新版本的手冊可在線上以可搜尋的形式在https://mysqldev.dev.org.tw/doc/取得。其他格式(包括可下載的 HTML 和 PDF 版本)也都在該處提供。
MySQL 本身的原始碼包含使用 Doxygen 編寫的內部文件。產生的 Doxygen 內容可從https://mysqldev.dev.org.tw/doc/index-other.html取得。也可以使用第 2.8.10 節 「產生 MySQL Doxygen 文件內容」中的指示,從 MySQL 原始碼發行版本在本機產生此內容。
如果您有關於使用 MySQL 的問題,請加入MySQL 社群 Slack。如果您有關於手冊本身新增或更正的建議,請將其傳送至https://mysql.dev.org.tw/company/contact/。
本手冊使用某些排版慣例
此樣式的文字
用於 SQL 陳述式;資料庫、資料表和資料行名稱;程式碼清單和原始碼;以及環境變數。範例:「若要重新載入授與資料表,請使用FLUSH PRIVILEGES
陳述式。」此樣式的文字
表示您在範例中輸入的內容。此樣式的文字表示可執行程式和指令碼的名稱,例如mysql(MySQL 命令列用戶端程式)和mysqld(MySQL 伺服器可執行程式)。
此樣式的文字
用於您應自行選擇值替代的可變輸入。此樣式的文字用於強調。
此樣式的文字用於資料表標題和傳達特別強烈的強調。
此樣式的文字
用於表示影響程式執行方式或提供程式以特定方式運作所需資訊的程式選項。範例:「--host
選項(簡短形式為-h
)會告知 mysql 用戶端程式它應連線的 MySQL 伺服器的主機名稱或 IP 位址」。檔案名稱和目錄名稱的寫法如下:「全域
my.cnf
檔案位於/etc
目錄中。」字元序列的寫法如下:「若要指定萬用字元,請使用 「
%
」字元。」
當命令或陳述式以提示字元作為前置詞時,我們使用這些
$> type a command here
#> type a command as root here
C:\> type a command here (Windows only)
mysql> type a mysql statement here
命令會在您的命令直譯器中發出。在 Unix 上,這通常是 sh、csh 或 bash 等程式。在 Windows 上,對應的程式是 command.com 或 cmd.exe,通常在主控台視窗中執行。以 mysql
作為前置詞的陳述式會在 mysql 命令列用戶端中發出。
當您輸入範例中顯示的命令或陳述式時,請勿輸入範例中顯示的提示字元。
在某些區域,可能會區分不同的系統,以顯示命令應在兩種不同的環境中執行。例如,在處理複製時,命令可能會以 source
和 replica
作為前置詞
source> type a mysql statement on the replication source here
replica> type a mysql statement on the replica here
資料庫、資料表和資料行名稱通常必須代入陳述式中。為了表示需要此類替代,本手冊會使用 db_name
、tbl_name
和 col_name
。例如,您可能會看到如下的陳述式
mysql> SELECT col_name FROM db_name.tbl_name;
這表示如果您要輸入類似的陳述式,您將會提供您自己的資料庫、資料表和資料行名稱,可能如下所示
mysql> SELECT author_name FROM biblio_db.author_list;
SQL 關鍵字不區分大小寫,且可以用任何字母大小寫寫入。本手冊使用大寫。
在語法描述中,方括號 (「[
」 和 「]
」) 表示選用的字詞或子句。例如,在下列陳述式中,IF EXISTS
是選用的
DROP TABLE [IF EXISTS] tbl_name
當語法元素包含多個替代方案時,這些替代方案會以垂直線 (「|
」) 分隔。當從一組選項中可以選擇一個成員時,替代方案會列在方括號 (「[
」 和 「]
」) 內
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)
當從一組選項中必須選擇一個成員時,替代方案會列在大括號 (「{
」 和 「}
」) 內
{DESCRIBE | DESC} tbl_name [col_name | wild]
省略符號 (...
) 表示省略陳述式的一部分,通常是為了提供更複雜語法的較短版本。例如,SELECT ... INTO OUTFILE
是SELECT
陳述式的簡寫形式,其中在陳述式的其他部分之後具有 INTO OUTFILE
子句。
省略符號也可以表示陳述式的前一個語法元素可以重複。在下列範例中,可以提供多個 reset_option
值,且第一個之後的每個值都以逗號作為前置詞
RESET reset_option [,reset_option] ...
用於設定 Shell 變數的命令會使用 Bourne Shell 語法顯示。例如,設定 CC
環境變數並執行 configure 命令的序列在 Bourne Shell 語法中如下所示
$> CC=gcc ./configure
如果您使用的是 csh 或 tcsh,您必須以稍微不同的方式發出命令
$> setenv CC gcc
$> ./configure
參考手冊的原始檔案是以 DocBook XML 格式撰寫。HTML 版本和其他格式主要是使用 DocBook XSL 樣式表自動產生。關於 DocBook 的資訊,請參閱 http://docbook.org/
本手冊最初由 David Axmark 和 Michael 「Monty」 Widenius 撰寫。它由 MySQL 文件團隊維護,團隊成員包括 Edward Gilmore、Stefan Hinz、David Hollis、Philip Olson、Daniel So 和 Jon Stephens。