[英]UUID data type in Oracle
我需要更改下表的規格:
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
)
如何更改表以將 integer 替換為 UID 數據類型???
Oracle 沒有 UID 數據類型。
要么使用:
VARCHAR2(36)
將 UUID 存儲為格式化的十六進制字符串(32 個十六進制字符和 4 個破折號); 或者RAW(16)
將 UUID 存儲為 16 個字節(128 位)。如何更改表以將 integer 替換為 UID 數據類型?
ALTER TABLE STAGE.STG_AAA_PROFILES ADD subscriber_uuid VARCHAR2(36);
然后將現有subscriber
列從 integer 轉換為 UUID 或為表中的行生成 UUID。 最后:
ALTER TABLE STAGE.STG_AAA_PROFILES DROP COLUMN subscriber;
ALTER TABLE STAGE.STG_AAA_PROFILES RENAME COLUMN subscriber_uuid TO subscriber;
Create a new column of the desired type and copy the current
Column data to the new type using the appropriate type
constructor.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.