MySQL 語法錯誤故障排除:保留關鍵字的狀況
透過 PHP 腳本建立多個 MySQL 資料庫表通常會導致令人沮喪的「SQL 語法錯誤」訊息。 一個常見的罪魁禍首是無意中使用 MySQL 保留字作為表名或列名。
本教學重點在於解決此類錯誤,特別是解決因使用保留字「order」作為表名而產生的問題。 order是MySQL中的關鍵字,控制資料檢索的順序,進而導致語法衝突。
解法涉及使用反引號轉義保留字。 修正後的SQL語句為:
<code class="language-sql">$sql = "CREATE TABLE `order`( order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id INT UNSIGNED NOT NULL, transaction_id VARCHAR(19) NOT NULL, payment_status VARCHAR(15) NOT NULL, payment_amount DECIMAL(6,2) UNSIGNED NOT NULL, payment_date_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (order_id), FOREIGN KEY (user_id) REFERENCES user (user_id) )ENGINE=InnoDB DEFAULT CHARSET=utf8";</code>
作為最佳實踐,請完全避免使用保留關鍵字。 選擇描述性的、非保留的名稱可以提高資料庫模式的可讀性並防止將來出現語法問題。
以上是在 MySQL 表名中使用保留字時如何解決「您的 SQL 語法有錯誤」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!