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

PL/SQLでJavaのBase64デコードを複製する

    CAST_TO_RAW をご覧ください。 文書化:

    これを使用する必要があります:

    base64DecodedInput:= UTL_ENCODE.base64_decode(UTL_RAW.CAST_TO_RAW(TO_CHAR(valueToDecrypt)));
    DBMS_OUTPUT.PUT_LINE ( 'Base64 decoded is: ' || base64DecodedInput);
    
    00010203040506074DBBEAB1D9972AB0
    

    どの(フォーマット済み)が目的の結果と等しくなる必要があります:

    00 01 02 03 04 05 06 07 4D BB EA B1 D9 97 2A B0
    

    NVARCHAR2を使用することはまったく役に立ちません BASE64文字列の場合。 BASE64エンコーディングの主な目的は、ASCII文字のみで任意のデータを表すことであるため、NVARCHAR2は意味がありません。 BASE64にはASCIIのみが含まれているため、CAST(... AS VARCHAR2(200))での文字エンコードについて心配する必要はありません。 。

    もちろん、デコードの場合 文字列データ型NVARCHAR2 とても便利かもしれません。



    1. MySQLコマンドラインクライアントでのオートコンプリート

    2. PostgreSQL-列の最大値を持つ行をフェッチします

    3. 複数のテーブルを持つSymfonysfDoctrinePager

    4. テーブル変数は1つの値のみで埋められます