загрузить большой файл в BLOB с помощью оракула и PHP - PullRequest
0 голосов
/ 17 мая 2018

Итак, я пытаюсь загрузить файл PDF и сохранить его в поле BLOB в таблице Oracle, но простой запрос, подобный приведенному ниже, не выполнен и выдает следующую ошибку:

ORA-01704: строковый литерал слишком длинный.

INSERT INTO tablename  values ('1' , "very large text from fread function ")

Есть идеи, как это решить?

1 Ответ

0 голосов
/ 17 мая 2018

Использование PDO.

Вы можете попробовать этот шаблон:

$db= new PDO("oci:dbname=dbnamehere","dbusername","dbpassword");
$stmt = $db->prepare("INSERT INTO tablename (pid, pdf) VALUE(NULL, :pdf);");

$fp = fopen("files/a.pdf", 'rb');

$stmt->bindParam(":pdf", $fp, PDO::PARAM_LOB);
$stmt->execute();

Этот шаблон вставляет запись со значением BLOB-объекта в базу данных.

...