我想在Oracle数据库表中使用GUID作为主键。但我检查了在Java中也有生成GUID的选项。所以我的疑问是哪一个是使用基于Oracle的GUID生成还是基于Java的GUID生成。哪个对性能和标准都好?
*Oracle: *select sys_guid() from dual;
*Java Based: *
UUID uuid = UUID.randomUUID();
return uuid.toString();
如果您的系统中大部分代码运行在Java中,而只有纯SQL语句在Oracle中执行,那么用Java生成主键会更方便。
如果您有很多存储过程,那么您将希望在Oracle中完成。
如果你有两者的混合,GUID的好处是你可以在两个地方生成它们,而不需要关心重复的。
性能方面,GUID生成几乎不相关。数据库应用程序的性能通常由磁盘IO和Java(或类似环境)与数据库之间的网络往返决定。