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. 數據庫 - mysql boolean型無法插入true2. .......3. node.js - 在搭建vue.js時,安裝淘寶npm鏡像cnpm,報錯,如何解決呢4. 視頻 - html5 video的autoplay 在智能手機上不運作?5. javascript - jquery選擇的dom元素如何更新?6. python - Django問題 ’WSGIRequest’ object has no attribute ’user’7. python - scrapy中返回函數的返回值8. javascript - H5頁面無縫輪播9. mysql輸入賬號密碼后跳出一大堆內容后但卻進不了mysql?10. mysql服務無法啟動1067錯誤,誰知道正確的解決方法?
