web-dev-qa-db-ja.com

sqldeveloperのinsertステートメントからBLOB列に挿入するにはどうすればよいですか?

Sqldeveloperを使用してOracleのBLOB列に挿入することは可能ですか?

つまり、次のようなものです:

insert into mytable(id, myblob) values (1,'some magic here');
30
chris

はい、可能です。 RAWからBLOBへの暗黙的な変換の使用:

insert into blob_fun values(1, hextoraw('453d7a34'));

453d7a34は16進数値の文字列で、最初にRAWデータ型に明示的に変換され、次にBLOB列に挿入されます。結果は4バイトのBLOB値です。

36
Codo

VARCHAR2BLOB列に挿入するには、次のように関数utl_raw.cast_to_rawを使用できます。

insert into mytable(id, myblob) values (1, utl_raw.cast_to_raw('some magic here'));

内容を変更せずに入力VARCHAR2RAWデータ型にキャストし、結果をBLOB列に挿入します。

関数の詳細 utl_raw.cast_to_raw

42
Nicolas Filotto
  1. mytable(id、myblob)値(1、EMPTY_BLOB)に挿入します;
  2. SELECT * FROM mytable mt where mt.id = 1 for update
  3. ロックアイコンをクリックして、編集のためにロックを解除します
  4. 編集するBLOBの横の...をクリックします
  5. 適切なタブを選択し、左上の[開く]をクリックします。
  6. [OK]をクリックして、変更をコミットします。
0