標籤:arc 符號 ice 查看 key 欄位 副檔名 not har
試用navicat工具查看現網mysql建表語句時,發現表名和欄位名都是反引號引起來的
CREATE TABLE `tab_notice_title_tv` ( `i_id` int(11) NOT NULL AUTO_INCREMENT, `c_opcom_key` varchar(32) DEFAULT NULL, `c_view_type` int(11) DEFAULT ‘1‘ COMMENT ‘平台類型,1:標清,2:高清‘, `c_title` varchar(32) DEFAULT NULL, `c_status` int(2) DEFAULT ‘0‘, `c_creator` varchar(32) DEFAULT ‘‘, `c_createtime` varchar(32) DEFAULT NULL, `c_deleted` int(2) NOT NULL DEFAULT ‘0‘, PRIMARY KEY (`i_id`)) ENGINE=MyISAM AUTO_INCREMENT=46 DEFAULT CHARSET=gbk;
反引號,一般在ESC鍵的下方。
它是為了區分MYSQL的保留字與一般字元而引入的符號。
舉個例子:SELECT `select` FROM `test` WHERE select=’欄位值’
在test表中,有個select欄位,如果不用反引號,MYSQL將把select視為保留字而導致出錯,所以,有MYSQL保留字作為欄位的,必須加上反引號來區分。
引號一般用在欄位的值,如果欄位值是字元或字串,則要加引號,如:select=’欄位值’
不加反引號建的表不能包含MYSQL保留字,否則出錯
名字上帶反的反引號,這個其實是為了防止 當欄位為關鍵字時,用這個符號就可以不報錯了
CREATE TABLE `zz_files` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `data_id` int(11) DEFAULT NULL, `name` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL, `fileurl` varchar(40) COLLATE utf8_unicode_ci DEFAULT NULL, `ext` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT ‘副檔名‘, `cate` varchar(30) COLLATE utf8_unicode_ci DEFAULT NULL, `desc` int(11) DEFAULT NULL, `c_time` int(11) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
如上對於desc這種關鍵字,用這個符號就不會出錯了
參考連結
http://blog.163.com/[email protected]/blog/static/66693350201721651918235/
(轉)mysql建立表時反引號的作用