sql >> データベース >  >> RDS >> Oracle

ORA-19011:文字列バッファが小さすぎます

    to_clob() 関数は文字値を受け取るため、XMLTypeから暗黙的に変換されます XMLElement()によって返されます varchar2に; XMLの長さが4kを超えると(SQLコンテキストにいるため)、そのエラーが発生します。

    XMLTypeを使用できます 関数getCLobVal() 代わりに:

        SELECT XMLElement("DEMANDS",
                    XMLAgg(XMLElement("Demand"
                                ,XMLElement( "DemandId",dmnd_id)
                            ,XMLElement( "CreatedBy",CREATED_BY)
    ...
        ,XMLElement("Comments",COMMENTS)
                           ))).getClobVal()
        into OUT_CLOB
        ...
    

    したがって、to_clob()への外部呼び出し 削除され、XMLElement().getClobVal()の呼び出しに置き換えられました .32kを超えるXMLでも検証済み。




    1. 外部FTPサイトからcsvファイルをインポートします

    2. 投票スコアがゼロまたは正の投稿の数をカウントするにはどうすればよいですか?

    3. 休日を除く2つの日付の間の平日数を取得する関数

    4. JdbcTemplateを使用するときに一重引用符をエスケープする