mysql怎么看字段冲突 mysql怎么查看字段的类型

MySQL中字段名和保留字冲突的解决办法

我们知道通常的SQL查询语句是这么写的:

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、小程序制作、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了咸丰免费建站欢迎大家使用!

复制代码

代码如下:select

col

from

table;

这当然没问题,但如果字段名是“from”呢?

复制代码

代码如下:select

from

from

table;

若真的这么写,必然出错,当字段名与MySQL保留字冲突时,可以用字符“`”将字段名括起来:

复制代码

代码如下:select

`from`

from

table;

总结

刚发现我原先设计的数据库表里有两个字段都用了保留字(add,comment)。在insert和update的时候出错。记得sql

server里好像是用[]括起来就ok了。于是试了一下,事实证明这在mySql里行不通。上网简单搜了一下发现都是说用中括号。后来又想到MySql

Administrator生成的sql语句好像会把表名什么都用单引号括起来。试了一下,还是行不通。但复制生成的那个符号发现可以。确定那个符号不是单引号。一看才发现时撇号(`

就是数字1前面那个键上的)。到此问题解决。总结一下就是一句话:

在Mysql中,当表名或字段名乃至数据库名和保留字冲突时,在sql语句里可以用撇号(`)括起来。

【MySQL】字段名与关键字冲突解决办法

  首先,不推荐使用MySQL的关键词来作为字段名,但是有时候的确没有注意,或者因为之前就这么写了,没办法,那怎么办呢?

  下面就详细的说明一下怎样使用 方法2 来处理。

  上面的测试表是MySQL自动生成的DDL,其实从上面就可以看出,MySQL的引号内是说明绝对的保证大小写和当做普通字符串处理。

  这里使用了maxvalue这个不常用的关键词作为字段名,一样违反了通常常规的命名规则,MySQL无法很好的识别。

  查询SQL:

  在navicat中可以正常执行,没有任何问题。

  然后再运行insert语句:

  提示下面的错误:

  提示错误,但是没有明显的说明是关键词不能识别。

  增加引号,使用MySQL的引号“`”,记住不是普通的英文单引号“'”,是倾斜的上撇,不是竖直的上撇。

  键盘输入方式为键盘英文字母键上面的数字键1最前面的那个波浪线和顿号组成的键。也就是ESC下面,TAB键上面的按键。

  这样就可以正常运行了。

mysql查找A字段含有XXX的且B字段重复出现的数据。

select * from qrcode

where remark like "%系统自动充值%" and ord in (select orderno from qrcode group by ord having COUNT(*)1)


网站名称:mysql怎么看字段冲突 mysql怎么查看字段的类型
文章来源:http://ybzwz.com/article/dospjgp.html