Как я могу вставить в столбец BLOB из инструкции insert в sqldeveloper?
Можно ли вставить столбец BLOB
в оракул с помощью sqldeveloper?
то есть. что-то вроде:
insert into mytable(id, myblob) values (1,'some magic here');
Ответы
Ответ 1
Да, возможно, например. используя неявное преобразование из RAW в BLOB:
insert into blob_fun values(1, hextoraw('453d7a34'));
453d7a34
- это строка шестнадцатеричных значений, которая сначала явно преобразуется в тип данных RAW, а затем вставляется в столбец BLOB. Результатом является значение BLOB, равное 4 байтам.
Ответ 2
Чтобы вставить VARCHAR2
в столбец BLOB
, вы можете положиться на функцию utl_raw.cast_to_raw
, как показано ниже, она будет вводить ваш вход VARCHAR2
в тип данных RAW
без изменения его содержимого, после чего он вставляет результат в столбце BLOB
:
insert into mytable(id, myblob) values (1, utl_raw.cast_to_raw('some magic here'));
Подробнее о функции utl_raw.cast_to_raw