3

快速问:Nhibernate HiLo id 在整个数据库中是唯一的吗?

我问的原因是我们有多个实体,它们具有与之关联的图像。在客户端上——我只是将这些图像存储在一个使用实体 ID 作为名称的文件夹中——我会因此而绊倒吗?

w://

4

1 回答 1

4

指望 id 在整个数据库中是唯一的,这听起来有点冒险。

如果每个实体都有一个单独的 next_hi 值(hibernate_unique_key 表中的单独行或列),那么您的 id 将不是唯一的。如果您所有的实体共享相同的 next_hi,如果您为不同的实体使用不同的 max_lo 值,您仍然可能会得到重复的 id。

我猜如果您对所有实体使用共享的 next_hi 值并且所有实体都具有相同的 max_lo,那么 id 应该是唯一的,代价是更大的 id 碎片。但是在投入任何资金之前,您可能应该仔细看看。

于 2010-05-14T11:05:37.303 回答