原因:java.sql.SQLSyntaxErrorException:information_schema中的未知表'abstractcontactinfo'

2020-08-24 05:45发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) 问题声明:在更新hybris平...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


问题声明:在更新hybris平台时出现以下SQL错误,请安装My SQL 8.0最新版本。

异常:由以下原因引起:java.sql.SQLSyntaxErrorException:information_schema中的未知表'abstractcontactinfo'

Local.properties:#Mysql数据库配置## db.url = jdbc:mysql://localhost/your_schema?useConfigs = maxPerformance&characterEncoding = utf8 db.driver = com.mysql.jdbc.Driver

技术问题:驱动程序兼容性问题。 通过将mysql-connector-java-8.0.13替换为mysql-connector-java-5.1.15

来解决
3条回答
d56caomao
2020-08-24 06:33

在更新过程中,系统Hybris正在从数据库本身加载Db的表。

我不知道如何使用Driver 5.x来完成它,但是它能起作用。

使用驱动程序8.x更改了获取表信息的逻辑。

表信息是从" INFORMATION_SCHEMA.TABLES"加载的。 在该表中列出了所有数据库的所有现有表。 使用驱动程序8.x的默认配置

 useConfigs = maxPerformance&characterEncoding = utf8
 

当前数据库没有任何限制,因此,用户正在加载用户可以读取的所有表。 这样做的原因是,将schema/catalog参数设置为

%(通配符)

当没有提供目录(空)并且正在从所有可读数据库中加载所有表时。

使用platform/project.properties中的默认设置

#db.url = jdbc:mysql://localhost/?useConfigs = maxPerformance&characterEncoding = utf8
 

未设置架构/目录,导致使用通配符。

可以通过设置值来更改

 nullDatabaseMeansCurrent = true(默认:false)

请参阅: https: //dev.mysql.com/doc/connector-j/8.0/zh-CN/connector-j-reference-configuration-properties.html

这将确保当前数据库用作架构/目录,并且仅从该数据库中加载表。

一周热门 更多>