Помогите с Blob полями

  • Автор темы Автор темы Lex_nv
  • Дата начала Дата начала
L

Lex_nv

требуется примерно вот что:

update PARTNER_KONTACT set stl1=concat(stl1,'$m')

тип столбца stl1 это BLOB, запрос не работает но суть я думаю понятна, мне соответственно нужно знать как должен выглядеть рабочий вариант.

Зарание спасибо.
 
Какой сервер БД вы используете ?
 
Oracle 8.1
Работаю через php4
 
Тогда ясно, что поле надо в строчное перевести. Можно еще попробовать знак " || " , одно и то же.
 
Тогда ясно, что поле надо в строчное перевести. Можно еще попробовать знак " || " , одно и то же.
Я был бы очень признателен если было бы не образное разведение руками со словами "Это делается примерно вот так", а кусок РАБОЧЕГО кода.
Зарание спасибо.
 
Не работал с BLOB через php, но я думаю подход один и кажется немного странно что вы патаетесь склеить двоичный бинарный объект и строку.. Я думаю что такая операция через ANSI SQL работать не будет...
 
http://www.oracle.com/technology/pub/artic...uecks_lobs.html
http://www.php.net/manual/ru/ref.oci8.php

Код:
$sql = "UPDATE
mylobs
SET
mylob = EMPTY_CLOB()
WHERE
id = 2403
RETURNING
mylob INTO :mylob
";

$stmt = OCIParse($conn, $sql);

$mylob = OCINewDescriptor($conn,OCI_D_LOB);

OCIBindByName($stmt,':mylob',$mylob, -1, OCI_B_CLOB);

// Execute the statement using OCI_DEFAULT (begin a transaction)
OCIExecute($stmt, OCI_DEFAULT) 
or die ("Unable to execute query\n");

if ( !$mylob->save( 'UPDATE: '.date('H:i:s',time()) ) ) {

OCIRollback($conn);
die("Unable to update lob\n");

}

OCICommit($conn);
$mylob->free();
OCIFreeStatement($stmt);
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab