Datanucleus SchemaTool可以创建未绑定到PC但在JDO ORM中映射的其他列吗?

时间:2013-06-27 20:55:16

标签: orm jdo datanucleus

我有一个User类(@PC)目前只有一个属性:'email',现在我想要用户表(存储User类的地方)有其他列,这些列不是由JDO管理但是主题认证发生在PM之外。当我通过Datanucleus自动创建表格然后更改表格时添加我的列一切都按预期工作。

当然,我很乐意使用SchemaTool来生成/更新模式,但是不希望在该用户表上使用手动ALTER表过程。天真的我试图把两个额外的列放到ORM文件中(省略目标):

  <package name="bo">
    <class name="User" table="tb_user">
      <column name="USER_SECURITY" jdbc-type="VARCHAR" length="64"/>
      <column name="SEC_SALT" jdbc-type="VARCHAR" length="10"/>
    </class>
  </package>

但是SchemaTool没有生成额外的列,尽管根据日志加载了ORM文件。

BTW:我不想在JDO生命周期中映射和管理这些列。

那么,是否有可能让Schematool在表上生成额外的列,或者我是否必须将它们排序到另一个不由Datanucleus管理的表中?

感谢

1 个答案:

答案 0 :(得分:0)

JDO规范定义了如此链接中所见的那样,我对使用SchemaTool中的这些未映射列的测试没有任何问题 http://www.datanucleus.org/products/accessplatform_3_3/jdo/orm/schema_mapping.html#unmapped