gpt4 book ai didi

java - Empire db code-gen 从表元数据读取 "0.-127"时双重解析失败

转载 作者:太空宇宙 更新时间:2023-11-04 13:31:40 25 4
gpt4 key购买 nike

我正在尝试使用 Empire db code-gen 对 Oracle 中的项目表进行逆向工程。

对于主键列 (ID),返回的元数据具有无效值(COLUMN_SIZE0,对于字段 DECIMAL_DIGITS-127 ),这是异常的原因:对于输入字符串:“0.-127”

谁能告诉我为什么 DECIMAL_DIGITS 是 -127。

Exception in thread "main" java.lang.NumberFormatException: For input string: "0.-127"
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1241)
at java.lang.Double.parseDouble(Double.java:540)
at org.apache.empire.db.codegen.CodeGenParser.addColumn(CodeGenParser.java:368)
at org.apache.empire.db.codegen.CodeGenParser.populateTable(CodeGenParser.java:300)
at org.apache.empire.db.codegen.CodeGenParser.populateDatabase(CodeGenParser.java:168)
at org.apache.empire.db.codegen.CodeGenParser.loadDbModel(CodeGenParser.java:96)
at org.apache.empire.db.codegen.CodeGenerator.generate(CodeGenerator.java:57)
at org.apache.empire.db.codegen.CodeGenerator.generate(CodeGenerator.java:72)
at org.apache.empire.db.codegen.CodeGenerator.main(CodeGenerator.java:45)

我使用mvngenerate-sources调用CodeGenerator

PS:我尝试了 ojdbc6 和 ojdbc14 jar,但没有成功。

最佳答案

这似乎与此处报告的问题有关:DatabaseMetaData.getColumns() returns unexpected values in COLUMN_SIZE and DECIMAL_DIGITS for INTEGER columns (-127 来自“int DecimalDig = rs.getInt("DECIMAL_DIGITS");”)

使用选项“-Doracle.jdbc.J2EE13Compliant=true”运行 JVM 似乎可以解决此问题。你能尝试一下吗?

关于java - Empire db code-gen 从表元数据读取 "0.-127"时双重解析失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32135225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com