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. android - webview 自定義加載進度條2. 為什么我ping不通我的docker容器呢???3. javascript - 微信小程序限制加載個數4. 并發模型 - python將進程池放在裝飾器里為什么不生效也沒報錯5. mysql - 怎么讓 SELECT 1+null 等于 16. python 怎樣用pickle保存類的實例?7. linux - openSUSE 上,如何使用 QQ?8. 大家好,請問在python腳本中怎么用virtualenv激活指定的環境?9. linux - 升級到Python3.6后GDB無法正常運行?10. Python中, 仿照經典代碼實現單例, 卻出現了不是單例的的狀態, 代碼哪里出錯了 ?
