insert - Mysql插入數據語法
問題描述
各位大神好,小弟今天在操作mysql插入數據時,碰到一個問題,百思不得其解,所以來SF請教一下各路大神。
表結構如下:
創建該表SQL語句如下:
CREATE TABLE `test_env` ( `id` int(11) NOT NULL AUTO_INCREMENT, `describe` varchar(11) NOT NULL, `detail` varchar(11) NOT NULL, `title` varchar(11) NOT NULL, `type` int(11) NOT NULL, `create_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
下面問題來了
我使用insert語句插入一條記錄,但是一直提示我語法錯誤
insert into test_env (describe, detail, title, type) values (’11’, ’22’, ’33’, 0);
提示
如果我使用下面的insert語句則沒有錯誤
insert into test_env (`describe`, `detail`, `title`, `type`) values (’11’, ’22’, ’33’, 0);
請問各位大神這是怎么回事,我之前在filed名上不加 ``符號也沒問題。
問題解答
回答1:因為describe是mysql保留的關鍵字,用來描述表結構的
回答2:應該是你的列名里有mysql的關鍵字describe,所以不加引號會報錯。
回答3:mysql命令describe
回答4:關鍵字了為防止這種情況發生,可以使用方法二
但是一般來講不要使用關鍵字作為field
相關文章:
1. macos - mac 重啟后 XAMPP下的apache無法啟動2. css3 - 這個右下角折角用css怎么畫出來?3. mysql - eclispe無法打開數據庫連接4. windows2003下的apache響應時間特別長?5. javascript - 在 model里定義的 引用表模型時,model為undefined。6. 關于Java引用傳遞的一個困惑?7. java - 根據月份查詢多個表里的內容怎么實現好?8. javascript - 一個關于客戶端和前端通信的疑惑?9. php - 一個操作請求多個服務如何保證數據的安全?10. javascript - webpack熱加載配置不生效
