这主要只是“检查我的理解”类型的问题。这是我对CLOB和BLOB在Oracle中工作的理解:
因此,换句话说,我有一些二进制数据(在这种情况下为腌制的python对象)。我需要确保,当我发送它时,它将完全按照我的发送方式进行存储,并且当我将其取回时,它将完全相同。BLOB是我想要的,对吗?
为此使用CLOB真的可行吗?还是字符编码会引起足够的问题,这是不值得的?
CLOB是对编码和排序规则敏感的,BLOB而不是。
CLOB
BLOB
当您写到CLOBusing中时,CL8WIN1251您会写一个0xC0(西里尔字母А)。
CL8WIN1251
0xC0
使用读回数据时AL16UTF16,您将返回0x0410,这是UTF16这封信的代表。
AL16UTF16
0x0410
UTF16
如果您正在阅读BLOB,则会得到相同的结果0xC0。