Firebird, zeos, multithreading

Модератор: Модераторы

Re: Firebird, zeos, multithreading

Сообщение Brainenjii » 01.02.2011 20:48:05

Слов нет...
Код: Выделить всё

  aConnection := TZConnection.Create(nil);
  aConnection.Database := 'bwebschool';
  aConnection.HostName := 'localhost';
  aConnection.User := 'SYSDBA';
  aConnection.Password := 'masterkey';
  aConnection.Protocol := 'firebird-2.1';
  aConnection.ReadOnly := TRUE;
  //aConnection.TransactIsolationLevel := tiReadCommitted;
  aConnection.Connect;
  aConnection.StartTransaction;
  aQuery := TZReadOnlyQuery.Create(nil);
  aQuery.Connection := aConnection;
  aQuery.SQL.Text := 'SELECT * FROM EXAMS_INDEX';
  aQuery.Open; // <- ЗДЕСЬ
  Exit;

Вот там где написано "<- ЗДЕСЬ" - всё падает с Runtime error: 216. С других таблиц - выбирает всё отлично... Да что же это такое? :-(

UPD:
И последний штришок:
Код: Выделить всё
  aConnection := TZConnection.Create(nil);
  aConnection.Database := 'bwebschool';
  aConnection.HostName := 'localhost';
  aConnection.User := 'SYSDBA';
  aConnection.Password := 'masterkey';
  aConnection.Protocol := 'firebird-2.0';
  aConnection.ReadOnly := TRUE;
  //aConnection.TransactIsolationLevel := tiReadCommitted;
  aConnection.Connect;
  aConnection.StartTransaction;
  aQuery := TZReadOnlyQuery.Create(nil);
  aQuery.Connection := aConnection;
  aQuery.SQL.Text := 'SELECT ID, TEACHER, GRADE, CAPTION FROM EXAMS_INDEX';
  aQuery.Open;
  Exit;


Код: Выделить всё
  aConnection := TZConnection.Create(nil);
  aConnection.Database := 'bwebschool';
  aConnection.HostName := 'localhost';
  aConnection.User := 'SYSDBA';
  aConnection.Password := 'masterkey';
  aConnection.Protocol := 'firebird-2.0';
  aConnection.ReadOnly := TRUE;
  //aConnection.TransactIsolationLevel := tiReadCommitted;
  aConnection.Connect;
  aConnection.StartTransaction;
  aQuery := TZReadOnlyQuery.Create(nil);
  aQuery.Connection := aConnection;
  aQuery.SQL.Text := 'SELECT ID, TEACHER, GRADE, CAPTION, EXAM_DATE FROM EXAMS_INDEX';
  aQuery.Open;
  Exit;

Первый запрос отрабатывает нормально, второй - шиш - 216 и всё тут...\

UPD#2:
Грязным хаком (преобразование всех полей дат в текстовые) оно поднялось... Теперь как бы вытащить значения, возвращающиеся по RETURNING MY_FIELD.. TZQuery.ExecSQL ругается на отсутствие поля MY_FIELD, TZQuery.Open - старый добрый Runtime error: #216...
А всё-таки, кто-нибудь работает с огнептицей на x64? :roll: Есть альтернатива zeos'у?
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Firebird, zeos, multithreading

Сообщение Vadim » 02.02.2011 03:44:01

Brainenjii
Сегодня попробую.
На ZEOS с Firebird я делал проект на какой-то из предыдущих версий ZEOS. Там не было ни малейших проблем. А в основном работаю с MySQL и SQLite. :)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Firebird, zeos, multithreading

Сообщение Brainenjii » 13.02.2011 21:46:29

В общем пересобрал fpc под 32 бита и вернулся к UIB... Вопрос про firebird и 64 бита оставлю открытым...
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Пред.

Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

Рейтинг@Mail.ru