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. 如何解決docker宿主機無法訪問容器中的服務?2. javascript - 如何使用nodejs 將.html 文件轉化成canvas3. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?4. javascript - Web微信聊天輸入框解決方案5. python - Scrapy存在內存泄漏的問題。6. angular.js - $stateChangeSuccess事件在狀態跳轉的時候不執行?7. javascript - 后臺管理系統左側折疊導航欄數據較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當前菜單8. android - rxjava merge 返回Object對象數據如何緩存9. 如何用筆記本上的apache做微信開發的服務器10. CSS3 畫如下圖形
