在3种数据库中使用关键字作为字段名的解决方法

来源:互联网 发布:linux的家目录 编辑:程序博客网 时间:2024/06/08 05:27

描述:

字段名与保留关键字冲突,mapper.xml 排除影响,请看下面3种数据库的解决方法

oracle

在Oracle 中只能用双引号"包围关键字。但由于Oracle中双引号内的字符串是区分大小写的,而不管创建表还是查询时,Oracle都会把字段名转成全部大写,所以,除非创建表时双引号内的字段名就是全大写的,否则以后查询时SQL语句都必须加双引号,若不加则Oracle内部会把字段名转成全大写从而提示“无效的标识符”。同理,查询普通字段也可以通过加双引号查询得出,但双引号内的字段名必须是全大写
例如:
SELECT "ANY_FIELD_NAME" FROM TableName

SQL Server

在SQL Server 中可以用方括号[]或双引号"包围关键字。字段名任何情况下都不区分大小写。

MySQL

在MySQL 中用`把表和列名名字围起来。字段名也不区分大小写(键盘数字键1左边的那个键)。
SELECT `ANY_FIELD_NAME` FROM TableName


阅读全文
1 0