主键增长策略
发布时间:2017-09-10 11:13:39
主键增长策略

每次自增,适合所有数据库,但是不要使用在多线程,主键类型是数值型。

identity

每次自增,适用于支持identity的数据库(mysql,sql server),主键类型是数值类型。

sequence

每次自增,适用于long,short,int类型。

native

native生成器能根据底层数据库系统的类型,自动选择合适的标识符生成器,适合于跨数据库平台。使用 identity,sequence,hilo,主键类型是数值型。

hilo

高低位算法生成器,按照一种high/low算法生成标识符。

uuid

用一个128-bit的UUID算法生成字符串类型的标识符,使用了网络中的IP地址生成唯一。主键属性类型不能是数值型。

assigned

用户自己设置主键值,主键类型可以是数值,字符型。

映射复合主键

foreign

在one-to-one中,有另一张表的主键(person)来决定自己主键/外键(IdCard)。

简单的说

Oracle:主键是int/long/short建议使用sequence

主键是string使用uuid或者assigned

mysql:主键是int/long/short建议使用increment/assigned

主键是字符串使用uuid/assigned

sql server:主键是int/long/short建议使用identity/native/assigned

主键是字符串使用uuid/assigned

one-to-one是基于主键的使用foreign

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:上海网站建设 http://www.flpsz.com