我需要更改下表的规格:
CREATE TABLE STAGE.STG_AAA_PROFILES
(
SUBSCRIBER INTEGER,
USERNAME VARCHAR2(50 BYTE),
GROUP_ID INTEGER,
PROFILE_ID INTEGER,
STATUS INTEGER,
PASSWORD_TYPE INTEGER,
EXPIRATION DATE
)
我必须让它看起来像:
CREATE TABLE STAGE.STG_AAA_PROFILES
(
SUBSCRIBER UID,
USERNAME VARCHAR2(50 BYTE),
GROUP_ID INTEGER,
PROFILE_ID UID,
STATUS INTEGER,
PASSWORD_TYPE INTEGER,
EXPIRATION DATE
)
如何更改表以将整数替换为 UID 数据类型???
Oracle 没有 UUID 数据类型。
使用:
VARCHAR2(36)
将 UUID 存储为格式化的十六进制字符串(32 个十六进制字符和 4 个破折号);或RAW(16)
将 UUID 存储为 16 字节(128 位)。如何更改表以将整数替换为 UID 数据类型?
ALTER TABLE STAGE.STG_AAA_PROFILES ADD subscriber_uuid VARCHAR2(36);
然后将现有的
subscriber
列从整数转换为UUID或为表中的行生成UUID。最后:
ALTER TABLE STAGE.STG_AAA_PROFILES DROP COLUMN subscriber;
ALTER TABLE STAGE.STG_AAA_PROFILES RENAME COLUMN subscriber_uuid TO subscriber;