1

通用映射应该只包含类型信息而不包含特定的列详细信息,例如:<column name="code" type="string">.

特定映射包含列信息,例如:<column name="code" type="string" sql-type="varchar" length="10">

这是我的困惑:这个映射应该是通用的吗?如果它是通用的,那么在地下更改数据库将很容易。但是,我想在映射文件中保留数据库详细信息,这样可以更轻松地重新创建数据库。

4

1 回答 1

3

如果您从您的 java 类重新创建数据库,那么请具体说明。

如果你有一个单独的 sql 脚本来创建数据库,那么额外的细节只是噪音。

一些未经请求的建议(但我认为您的问题直指这一点):根据我的经验,我认为从映射创建数据库并不好,因为您可以向您的 sql 脚本添加更多细节(额外索引,触发器、评论!和其他类型的 DB 黑魔法)。展望未来,您将如何更新该数据库?Hiberante 可以更新模式,但这样做的过程充满了错误。如果你需要回滚,你会怎么做?

以防万一,我上面提到的内容仅适用于您正在进行商业应用程序。如果您正在为娱乐/学校/大学做一些事情,那么您将不需要关心更新和回滚。

于 2012-11-12T15:33:26.833 回答