在openbravo中执行update.database时出现问题
[java] ALTER TABLE AD_FIELD [java] ADD CONSTRAINT AD_COLUMN_FIELD FOREIGN KEY(AD_COLUMN_ID)REFERENCES AD_COLUMN(AD_COLUMN_ID)
[java] 250661错误 - 并非最终更新步骤中的所有命令都已正确执行。这可能意味着至少有一个外键未成功激活。请检查哪一个,并修复缺少的引用,或恢复源的备份。 [java] java.lang.Exception:更新数据库时出现严重问题。请在继续进行应用程序重建之前检查并修复它们 [java] at org.openbravo.ddlutils.task.AlterDatabaseDataAll.doExecute(AlterDatabaseDataAll.java:227) [java] at org.openbravo.ddlutils.task.BaseDatabaseTask.execute(BaseDatabaseTask.java:86) [java] at org.openbravo.ddlutils.task.AlterDatabaseJava.main(AlterDatabaseJava.java:38)`
答案 0 :(得分:0)
请在您的数据库中执行以下查询
select AD_FIELD_ID from AD_FIELD where AD_COLUMN_ID not in (select AD_COLUMN_ID from AD_COLUMN);
输出列缺少AD_FIELD表中的外键AD_COLUMN_ID。
转到modulepath / src-db / database / sourcedata / AD_FIELD.xml
从上面的查询输出中搜索单个AD_FIELD_ID并从AD_FIELD.xml文件中删除并再次执行update.database。