select max(tmp1)::varchar from test01;
com.alibaba.druid.sql.parser.ParserException: syntax error, error in :' max(tmp1)::varchar from test01;, pos 18, line 1, column 17, token ::
原提问者GitHub用户Galthen
您提供的 SQL 语句中,使用了 PostgreSQL 数据库中的类型转换语法 ::,将 max(tmp1) 转换为 varchar 类型。这种类型转换语法在 PostgreSQL 中是合法的,并且可以正常使用。
可能导致解析错误的原因可能有以下几个方面:
SQL 解析器版本不支持该语法。您使用的 SQL 解析器可能不支持 :: 类型转换语法。建议使用 PostgreSQL 官方提供的解析器或者其他支持该语法的解析器进行解析。
数据库连接问题。可能是由于数据库连接中断或者网络异常等问题导致 SQL 解析失败。建议检查数据库连接是否正常,网络是否通畅等,以确保能够正常访问数据库。
数据库权限问题。可能是由于您的数据库用户没有权限执行该 SQL 语句导致解析失败。建议检查您的数据库用户权限是否正确,并进行相应的授权和配置。
问题已修复,请用新版本
https://github.com/alibaba/druid/releases/tag/1.2.6
原回答者GitHub用户wenshao
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。