mysql对sql中别名引起的Columnnotfound问题_MySQL
程序员文章站
2022-05-20 10:54:26
...
Caused by: java.sql.SQLException: Column ‘BTN_ICON’ not found.
报错信息是找不到表中的某字段,但是表里确确实实有这个字段。
这个问题,在百度是很难百度到的,因为百度出来的都是确实是字段有问题或者sql写的有问题。但其实,这个问题并不是sql或者表字段的问题。
sql如下:
SELECT B.RES_ID, B.RES_NAME, B.RES_TYPE, B.TARGET_RESOURCE,
A.BTN_ICON AS RES_ICON, A.BTN_SCRIPT AS RES_SCRIPT ,B.CREATE_TIME
FROM tf_b_BUTTON A,tf_b_RES B
我尝试把这个字段注释了,却报A.BTN_SCRIPT这个字段有问题,观察发现,仅仅用了别名的字段才有问题!
原因是,我升级了mysql的jar包。升级为mysql-connector-java-5.1.34.jar,升级的原因是我升级了tomcat(老的mysql的jar只支持tomcat7)。
并且,我的数据源配置是:
url=”jdbc:mysql://130.51.2.24:3010/zplatdb”
应该改为就可以了:
url=”jdbc:mysql://130.51.2.24:3010/zplatdb?useUnicode=true&characterEncoding=UTF-8”
或者改为:
url=”jdbc:mysql://130.51.2.24:3010/zplatdb?characterEncoding=utf-8&useOldAliasMetadataBehavior=true”
注意:&符合要使用&;来替代。
问题解决。
推荐阅读
-
Python中MySQLdb和torndb模块对MySQL的断连问题处理
-
有关mysql中sql的执行顺序的小问题
-
Python中MySQLdb和torndb模块对MySQL的断连问题处理
-
有关mysql中sql的执行顺序的小问题
-
基于mysql中delete的语法别名问题
-
php-mysql 问题笔记一——在命令行中可以执行的sql语句,无法从php页面页面执行!,php-mysqlsql_PHP教程
-
SQL Server数据库开发中的十大问题(4)_MySQL
-
Mysql SQL语句过长引起的问题_MySQL
-
一个很奇怪的问题:同样的一条sql语句,在mysql中能查到记录,而在php中却查不到
-
mysql-python 脚本中sql语句执行失败的问题