Oracle中的SYS_GUID()函数
时间:2010-09-28 来源:wanqiufeng
在Oracle 8i以后提供sys_guid ()方法
方法作用: 系统根据当前时间和机器码,生成全球唯一的一个序列号。
方法使用场景:
这在对象在不同机器的不同数据库里生成以及需要在后来合并到一起的情况下很有用,因为这样可以防止主键冲突。
因为采用sequence的话,只能保证在同一个数据中该序列号唯一,但是在不同的数据库实例中有可能冲突。
该方法的弊端:
由于sys_guid ()生成的序列号过长,这会消耗数据库存储空间,且管理不方便。
基于此,在非并行环境下的数据库应用中,应尽量避免使用sys_guid ()
方法举例: select sys_guid() from dual;
------------------------------------------- 6E3DC539CF7944E7BC4650D0EEF06865
方法作用: 系统根据当前时间和机器码,生成全球唯一的一个序列号。
方法使用场景:
这在对象在不同机器的不同数据库里生成以及需要在后来合并到一起的情况下很有用,因为这样可以防止主键冲突。
因为采用sequence的话,只能保证在同一个数据中该序列号唯一,但是在不同的数据库实例中有可能冲突。
该方法的弊端:
由于sys_guid ()生成的序列号过长,这会消耗数据库存储空间,且管理不方便。
基于此,在非并行环境下的数据库应用中,应尽量避免使用sys_guid ()
方法举例: select sys_guid() from dual;
------------------------------------------- 6E3DC539CF7944E7BC4650D0EEF06865
相关阅读 更多 +