[英]How to storage huge String data in oracle database?
我應該怎么做才能正確保存這些數據。
使用CLOB
數據類型。
從 Oracle 12c 開始,您可以添加一個CHECK
約束以確保它是有效的 JSON:
CREATE TABLE table_name (
value CLOB CHECK ( value IS JSON )
);
有人可以告訴我這是否可以將其保存在
VARCHAR2
?
VARCHAR2
數據類型存儲可變長度的字符串。 當創建具有一個表VARCHAR2
列,則在1個4000字節之間指定一個最大字符串長度(以字節或字符)VARCHAR2
柱。
因此,如果您有 5,000 - 10,000 個字符的字符串,則無法將其存儲在VARCHAR2
數據類型中,因為它的最大大小為 4,000 字節。
如果 JSON 數據具有固定格式,那么您可以為 JSON 中的嵌套對象創建表,並將 JSON 中的鍵值對存儲在這些表的列中; 但是如果你想存儲完整的 JSON,那么你需要使用 LOB 數據類型,因為 JSON 是字符數據,所以 CLOB 是合適的。
您可以從數據庫 12.2 增加 VARCHAR2 的最大大小: https : //docs.oracle.com/en/database/oracle/oracle-database/12.2/refrn/MAX_STRING_SIZE.html#GUID-D424D23B-0933-425F-BC69 -9C0E6724693C
否則,如前所述,請使用 CLOB。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.