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

时间:2022-09-21 22:52:24

面试被问到一个问题,假如MySQL中的关键字在查询语句中作为列明或者表名出现,应该怎么处理。

例如

select desc from t;

首先创建一张表,包含两个字段,id和desc

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

插入了三条数据

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

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

 

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

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

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

mysql> select `desc` from t; +--------------+ | desc | +--------------+ | 23234 | | klsadjflkasj | | 你好 | +--------------+ 3 rows in set (0.00 sec)