簡體   English   中英

文本文件的Oracle數據類型?

[英]Oracle Data Type for text file?

我需要在Oracle中創建一個表,它將存儲一系列大型文本文件。 在查看Oracle數據類型之后,我不清楚應該使用哪種類型來存儲文件。

像VARCHAR2這樣的文本特定類型的限制似乎非常小(32K)。 其他類型似乎不是文本文件的正確匹配(例如BFILE)。

有沒有人對正確使用的類型有意見?

CLOB和BLOB / BFILE之間的區別在於CLOB被視為Text。 也就是說,如果從數據庫中提取CLOB,它將執行從數據庫字符集到客戶端字符集所需的任何轉換(例如,從ê中刪除重音)。 類似地,當客戶端創建CLOB時,可以存在從客戶端字符集到數據庫字符集的轉換。 如果客戶端和數據庫字符集相同,則不需要或不執行轉換。

NCLOB與CLOB類似,不同之處在於轉換使用NLS NCHAR字符集,而不是數據庫字符集。

BLOB / BFILE不受轉換規則的約束。

所以我通常會使用CLOB作為文本,但是如果有一些校驗和/審計跟蹤邏輯,我甚至不想進行字符集轉換,我可能會選擇BLOB / BFILE。 我不會考慮長期或長期。

取決於您使用的CLOB或Long的Oracle版本

字符數據的LOB數據類型是CLOB和NCLOB。 它們可以存儲多達8TB的字符數據(CLOB)或國家字符集數據(NCLOB)。

稍后Oracle建議您將現有的LONG RAW列轉換為LOB列。 與LONG列相比,LOB列的限制要少得多。 此外,LOB功能在每個版本中都得到了增強,而LONG RAW功能在幾個版本中都是靜態的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM