我对推进中的外键有疑问。我的项目中有 2 个模式与 2 个物理数据库匹配:我的本地数据库(数据库一)和带有一些只读信息的远程数据库(数据库二)
关键是我需要设置一个从 DB One 到 DB 2 的外键,但它不起作用。这是我的模式:
模式 1
<database package="dbOne" defaultIdMethod="native" name="dbOne">
<table name="tableOne">
<column name="pk_tableOne" type="INTEGER" primaryKey="true" required="true" autoIncrement="true"/>
<column name="column_one" type="DOUBLE" required="true"/>
<foreign-key name="fk_column_one" foreignTable="tableTwo" foreignSchema = "dbTwo">
<reference local="column_one" foreign="column_two"/>
</foreign-key>
</table>
</database>
模式 2
<database package="dbTwo" defaultIdMethod="native" name="dbTwo">
<table name="tableTwo">
<column name="column_two" type="DOUBLE" primaryKey="true" required="true"/>
</database>
我已经使用两个数据源设置了 runtime/build-conf.xml,在 om/diff 命令期间我收到了这个错误:
由于以下原因,目标“om-template”的执行失败:“tableOne”包含不存在的表“dbTwo.tableTwo”的外键
我究竟做错了什么?