开发者社区> 问答> 正文

MySQL关键字作为列名表名的处理方式

(有什么问题欢迎指教,企鹅:2172243813 更多资讯尽在通天源码论坛)

假如MySQL中的关键字在查询语句中作为列明或者表名出现,应该怎么处理。

例如

select desc from t;



一脸懵逼。尴尬。

于是乎,自己私下做了一个实验,发现了其中原因,特此分享。

创建t表,包含两个字段,id和desc



插入了三条数据



mysql> use test;
Database changed
mysql> select desc from t;
ERROR 1064 (42000): You have an error in your SQL syntax; check themanual that corresponds to your MySQL server version for the rightsyntax to use near 'desc from t' at line 1



果然出错了,其实出现这个错误的原因是desc这个单词是mysql数据库的关键字,所以sql语句执行到这里的时候觉得语句有问题。

处理方式,在列名字前后加上如下所示的符号


mysql> select `desc` from t;
+--------------+
|desc <div id="sina_keyword_ad_area2" newfont_family"="">       |
+--------------+
|23234       |
| klsadjflkasj |
|你好        |
+--------------+
3 rows in set (0.00 sec)<div newfont_family"="">
<div newfont_family"="">本文来自苦逼IT小子的新浪博客

展开
收起
通天技术 2017-09-20 16:03:51 3262 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像