Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / oid, delphi, zeos большие картинки / 4 сообщений из 4, страница 1 из 1
04.05.2006, 12:53
    #33706682
Арбайтер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oid, delphi, zeos большие картинки
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
{ Этот кусок кода работает, но не
 сохраняет файлы больше 8Кб
TRY
 Q.Close;
 Q.SQL.Clear;
 Q.SQL.Add('INSERT INTO image_oid(id, blob) VALUES(2,:blob)');
 Q.ParamByName('blob').LoadFromFile(Edit1.Text, ftBlob);
 Q.ExecSQL;
 ShowMessage('OK');
EXCEPT
  ShowMessage('Failure');
END;
 Q.Close;
 Q.SQL.Clear;
 Q.SQL.Add('SELECT * FROM image_oid');
 Q.Open;}

Поле blolb типа oid.

Пробовал еще так сохранять:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
blob := Q.CreateBlobStream(Q.FieldByName('blob'), bmWrite);
  try
    blob.Seek( 0 , soFromBeginning); 
    fs := TFileStream.Create(Edit1.Text, fmOpenRead or
      fmShareDenyWrite); 
    try 
      blob.CopyFrom(fs, fs.Size) 
    finally 
      fs.Free 
    end; 
  finally 
    blob.Free 
  end;

    Q.Post;

Тоже самое: если картинка маленькая 3-5 кб, то она сохраняется в базе и нормально отображается в cxDBImage.
Как только пытаюсь загрузить файл побольше - получаю ошибку:
SQL Error: pgReadData() -- read() failed: errno=0 No error.
Как это побороть?
Настройки ZConnection
Properties: OIDasBlob=true
tiReadCommitted

Query.RequestLive = true
...
Рейтинг: 0 / 0
04.05.2006, 14:38
    #33707084
Алексей Ключников
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oid, delphi, zeos большие картинки
А что значит
Поле blolb типа oid.
?
...
Рейтинг: 0 / 0
04.05.2006, 15:06
    #33707224
Арбайтер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oid, delphi, zeos большие картинки
название поля "blob", тип поля "oid".
...
Рейтинг: 0 / 0
04.05.2006, 15:48
    #33707434
Арбайтер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oid, delphi, zeos большие картинки
Вопрос снят.

Все дело было в библиотеке.

http://web10086.xolphin.net/index.php?option=com_content&task=view&id=30&Itemid=5

PostgreSQL users should download a new version of the PostgreSQL driver (libpq.dll) from the downloads section. This file corrects an stream read error when manipulating BLOB columns larger than 8Kb with ZeosDBO
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / oid, delphi, zeos большие картинки / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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