これは主に「私の理解を確認する」タイプの質問です。 Oracleで動作するCLOBとBLOBについての私の理解は次のとおりです。
つまり、バイナリデータ(この場合、ピクルスpythonオブジェクト)があります。送信するときに、送信したとおりに保存されることを保証する必要があります。そして、私がそれを取り戻したとき、それはまったく同じになるということです。
これにCLOBを使用することは本当に可能ですか?または、文字エンコーディングは、それだけの価値がないほど十分な問題を引き起こしますか?
CLOB
はエンコードと照合を区別しますが、BLOB
は区別しません。
たとえばCL8WIN1251
を使用してCLOB
に書き込む場合、0xC0
(キリル文字А)を書き込みます。
AL16UTF16
を使用してデータを読み戻すと、0x0410
が返されます。これは、この文字のUTF16
表現です。
BLOB
から読み取っていた場合、同じ0xC0
が返されます。
あなたの理解は正しいです。 Pythonについて言及しているので、Python 3文字列とバイトの3つの違いを考えてください:CLOBとBLOBは、CLOBのエンコードがアプリの制御下にないという追加の問題を伴います。