powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как перенести содержимое BLOB поля из одной записи в другую
21 сообщений из 21, страница 1 из 1
Как перенести содержимое BLOB поля из одной записи в другую
    #39451161
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

Есть таблица с BLOB полем, в котором хранятся бинарные данные
Мне нужно:
1. прочитать содержимое BLOB-поля выбранной записи
2. показать его в виде строки/строк пользователю (то есть показать как это делает скажем PL/SQL Developer в форме просмотра BLOB-полей на странице "Hex" - см. ниже)
3. при подтверждении пользователем, вставить эти данные в другую запись
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451165
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-Talker,

гляньте dbms_lob

.....
stax
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451166
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-Talker,

1. select
2. установить пользователю pl/sql developer
3. insert/update

Если требуется более подробный ответ, то сформулируй более адекватную задачу. Какой стек используется для разработки пользовательского приложения? Какие библиотеки доступа к данным? И т.п.
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451167
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поторопился сохранить..

Вот так читаю данные:
Код: plsql
1.
UTL_RAW.CAST_TO_RAW( UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(t.my_blob,32000)))


Вот так пробую сохранить:
Код: plsql
1.
2.
3.
update my_table t
set t.my_blob = RAWTOHEX(UTL_RAW.CAST_TO_RAW(v_varchar2))
where t.id = 123


При этом в v_varchar2 содержится строка типа '000000FF ...[вырезано] 5860' - полученная при чтении в первом шаге.

Результат совершенно не тот который мне нужен - эти данные вставляются просто как строка, а не бинарные данные
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451169
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-Talker,

Может быть потому что rawtohex и возвращает строковое представление hex-кодов?
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451172
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-Talker,

hextoraw , не?
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451173
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
env,

Пробовал и так - результат один и тот же ((
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451174
Vint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-Talker,
иногда полезно думать головой. если пользователь данные не меняет, то не обязательно с клиента их передавать опять на сервер. можно на сервере сделать insert into select. и все эти преобразования не нужны.
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451175
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
env,

Блин, все верно, вот так сработало:

Код: plsql
1.
2.
3.
update my_table t
set t.my_blob = RAWTOHEX(v_varchar2)
where t.id = 123



Спасибо :)
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451177
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vint,

Больше энтропии хорошей и разной!
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451182
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vint,

Т.е. открыть транзакцию, вставить запись, показать картинку пользователю и при согласии закоммитить.
Все бы хорошо, а если пользователь открыл форму и не успев нажать ни да ни нет, его прохватило гнилыми пирожками и он на пару часов засел на очке. А транзакция висит.. А строка заблокирована.. Айс? Ни разу не айс.
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451185
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, не ВСТАВИТЬ запись, а ИЗМЕНИТЬ запись
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451187
SQL-Talker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vint,

Хотя, нет. Вы правы. Не нужны эти подпрыги. :))
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451244
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL-TalkerХотя, нет. Вы правы. Не нужны эти подпрыги. :))

Не нужны если есть гарантия, что между select и update/insert поле исходной записи не
изменится.

PS: Аффтар, попробуй свою фигню на блобе размером в пару гигабайт.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451295
Vint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
сначала нехило бы представить пользователя который сможет отсмотреть такой блоб и сказать, типа, все нормально. фильм ништяк. можно записывать.
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451300
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VintDimitry Sibiryakov,
сначала нехило бы представить пользователя который сможет отсмотреть такой блоб и сказать, типа, все нормально. фильм ништяк. можно записывать.
запросто
напр карточка доступа ("ключ") на бумаге с подписями/печатьями и ее електронная версия в БД

.....
stax
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451314
Vint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stax..,
"2. показать его в виде строки/строк пользователю (то есть показать как это делает скажем PL/SQL Developer в форме просмотра BLOB-полей на странице "Hex" - см. ниже)"
и я уже представил карточка.jpg в разрешение 256k чтобы размер до пары гигов дотягивал)))
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451315
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vint,

ааааааааааа, понял, Вы про ГИГЫ, а я о хексах

......
stax
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451360
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovSQL-TalkerХотя, нет. Вы правы. Не нужны эти подпрыги. :))

Не нужны если есть гарантия, что между select и update/insert поле исходной записи не
изменится.
А если изменится после, то что меняет прокачка значения через клиента?
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451365
Vint
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-,
как что? пользователь отсмотрит все в хекс и то что увидит сохранит. а если там чтото внутрях измениться без показа пользователю, то сохраниться может совсем другая информация. вдруг кто-то до этого чай пил и через пол дня сохранил.
правда решается это все не так, ну да это имхо)
...
Рейтинг: 0 / 0
Как перенести содержимое BLOB поля из одной записи в другую
    #39451395
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vintкак что?это я недосмотрел "сценарий" и домыслил репликацию, то есть они и дальше должны совпадать.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как перенести содержимое BLOB поля из одной записи в другую
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]