私はデータ型CLOB
を持ってフィールド上の4000文字以上の値を設定しようとするが、それは私にこのエラー与える:エラー:ORA-01704:文字列リテラルが長すぎ
ORA-01704:文字列をリテラルは長すぎます。
私は私の場合のために、およそ15000
文字であることを起こるが、無制限の文字の値を設定する必要がある場合は、データ型が私のために適用可能であろう任意の提案は、。
注:格納しようとしている長い文字列はANSIでエンコードされています。
私はデータ型CLOB
を持ってフィールド上の4000文字以上の値を設定しようとするが、それは私にこのエラー与える:エラー:ORA-01704:文字列リテラルが長すぎ
ORA-01704:文字列をリテラルは長すぎます。
私は私の場合のために、およそ15000
文字であることを起こるが、無制限の文字の値を設定する必要がある場合は、データ型が私のために適用可能であろう任意の提案は、。
注:格納しようとしている長い文字列はANSIでエンコードされています。
CLOBで操作するときは何を使用していますか?あなたは以下のクエリのように、複数のチャンクに文字を分割して試してみてみPL/SQL
DECLARE
str varchar2(32767);
BEGIN
str := 'Very-very-...-very-very-very-very-very-very long string value';
update t1 set col1 = str;
END;
/
でそれを行うことができ、すべてのイベントで
:
Insert into table (clob_column) values (to_clob('chunk 1') || to_clob('chunk 2'));
それは、私のために働いた。
分割は、挿入する文字に応じて4000文字までです。特殊文字を挿入すると失敗する可能性があります。 唯一の安全な方法は、変数を宣言することです。
ありがとうございますが、CIは、これらの手順をサポートしていないことhttp://stackoverflow.com/questions/13946641/error-this-feature-is-not-available-for-the-database-you-are-using#を詰め込みますcomment19232999_13946641 – hsuk
私はこのコードを手続きでラップすることができ、Codeigniterはそれを実行できると思います。申し訳ありませんが、私はチェックのためのCodeigniterを持っていません。ここを見て[リンク](http://stackoverflow.com/a/7930092/1910242) – knagaev
はそれをやったが、私は、このリンクをチェックし、VARCHAR2のサイズを定義することができ、http://stackoverflow.com/questions/13947222/error -ORa-06553-PLS-306-間違った番号・オア・タイプ・オブ・引数・イン・コールに-proced/13947420#13947420 – hsuk