0

我有一个 JDO 课程。部分属性如下图所示:

@Column(jdbcType = "VARCHAR", length = 200)
String anotherSrcFieldValue;

@Column(jdbcType = "BIGINT")
long tgtFieldId;

@Column(jdbcType = "VARCHAR", length = 200)
String tgtFieldValue;

使用 MySQL 和 MSSQL 可以正常工作。

我的要求是,如果是 MySQL,请将其设为 VARCHAR 类型的列;如果是 MSSQL,则创建 NVARCHAR 类型的列。我怎样才能做到这一点?

第二个要求是在两个数据库上运行一个实体类。

4

1 回答 1

0

我见过的所有 JDO 文档都清楚地解释了将特定于模式的信息放在注释中是一个坏主意。因此,您应该有 2 个文件“ package-mysql.orm ”和“ package-mssql.orm ”来指定映射的特定于模式的部分,并根据您的数据存储将“ datanucleus.Mapping”设置为“ mysql ”或“ mssql ” . 根据http://www.datanucleus.org/products/accessplatform_4_2/jdo/orm/metadata_orm.html

于 2016-01-18T18:18:31.727 回答