可以将GUID自动生成到Insert语句中吗?
另外,我应该使用什么类型的字段来存储此GUID?
发布于 2011-05-22 14:33:31
您还可以在表的create语句中包含guid作为默认值,例如:
create table t_sysguid
( id raw(16) default sys_guid() primary key
, filler varchar2(1000)
)
/
发布于 2018-05-18 22:24:18
示例位于:http://www.orafaq.com/usenet/comp.databases.oracle.server/2006/12/20/0646.htm
SELECT REGEXP_REPLACE(SYS_GUID(), '(.{8})(.{4})(.{4})(.{4})(.{12})', '\1-\2-\3-\4-\5') MSSQL_GUID FROM DUAL
结果:
6C7C9A50-3514-4E77-E053-B30210AC1082
发布于 2010-06-14 21:25:34
不清楚您所说的将guid自动生成到insert语句中是什么意思,但根据猜测,我认为您正在尝试执行类似以下的操作:
INSERT INTO MY_TAB (ID, NAME) VALUES (SYS_GUID(), 'Adams');
INSERT INTO MY_TAB (ID, NAME) VALUES (SYS_GUID(), 'Baker');
在这种情况下,我认为ID列应该声明为RAW(16);
我做这件事完全是胡思乱想。我没有现成的Oracle实例可供测试,但我认为这正是您想要的。
https://stackoverflow.com/questions/3037462
复制相似问题