Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2009-11

ZeosLib and FPC 2.2.5

9 messages · 6 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

ik

Hello,

I'm trying to install ZeosLib 6.6.5 on Lazarus 0.9.29 using FPC 2.2.5, and it has a problem with the current code:
BaseFieldTypes: array[TFieldType] of TFieldType = ( ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat,
ftFloat, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes, ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown,
ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet, ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd

    {$IFDEF FPC2_1UP}, ftString, ftBlob{$ENDIF});

FPC claims that it ends prematurely and more items should be added. Has anyone solved this error (it will be easier then do a parameter by parameter checking by hand) ?

Thanks,
Ido

http://ik.homelinux.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20091104/84ff5806/attachment.html>

Reply by email

Marco van de Voort
to ik
ik wrote 16 lines
I'm trying to install ZeosLib 6.6.5 on Lazarus 0.9.29 using FPC 2.2.5, and it has a problem with the current code: BaseFieldTypes: array[TFieldType] of TFieldType = ( ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, ftFloat, ftFloat, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes, ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftUnknown, ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet, ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, ftTimeStamp, ftFMTBcd {$IFDEF FPC2_1UP}, ftString, ftBlob{$ENDIF}); FPC claims that it ends prematurely and more items should be added. Has anyone solved this error (it will be easier then do a parameter by parameter checking by hand) ?

Current trunk has: (db.pas)

  TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord,
    ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate,  ftTime, ftDateTime,
    ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo,
    ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar,
    ftWideString, ftLargeint, ftADT, ftArray, ftReference,
    ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface,
    ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd, ftFixedWideChar,
    ftWideMemo);

That seems to mostly match. Maybe the FPC2_1up construct fails?

Reply by email

ik
to Marco van de Voort

Thanks, I updated the records (with the FPC version) and it compiles properly, but it seems that ZeosLib is not a 64 bit ready. It uses pointer of integer and I experience a lot of weird behavior regarding bookmarks.

I require to use Firebird and perform tasks on it. SQLdb does not push the transaction to the database, so I do not know what else to use in Lazarus 64 bit.

Ido
http://ik.homelinux.org/

Marco van de Voort wrote 40 lines
On Wed, Nov 04, 2009 at 10:30:34AM +0200, ik wrote: > I'm trying to install ZeosLib 6.6.5 on Lazarus 0.9.29 using FPC 2.2.5, and > it has a problem with the current code: > BaseFieldTypes: array[TFieldType] of TFieldType = ( > ftUnknown, ftString, ftInteger, ftInteger, ftInteger, ftBoolean, > ftFloat, > ftFloat, ftBCD, ftDateTime, ftDateTime, ftDateTime, ftBytes, ftVarBytes, > ftInteger, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, ftBlob, > ftUnknown, > ftString, ftString, ftLargeInt, ftADT, ftArray, ftReference, ftDataSet, > ftBlob, ftBlob, ftVariant, ftInterface, ftInterface, ftString, > ftTimeStamp, ftFMTBcd > {$IFDEF FPC2_1UP}, ftString, ftBlob{$ENDIF}); > > FPC claims that it ends prematurely and more items should be added. > Has anyone solved this error (it will be easier then do a parameter by > parameter checking by hand) ? Current trunk has: (db.pas) TFieldType = (ftUnknown, ftString, ftSmallint, ftInteger, ftWord, ftBoolean, ftFloat, ftCurrency, ftBCD, ftDate, ftTime, ftDateTime, ftBytes, ftVarBytes, ftAutoInc, ftBlob, ftMemo, ftGraphic, ftFmtMemo, ftParadoxOle, ftDBaseOle, ftTypedBinary, ftCursor, ftFixedChar, ftWideString, ftLargeint, ftADT, ftArray, ftReference, ftDataSet, ftOraBlob, ftOraClob, ftVariant, ftInterface, ftIDispatch, ftGuid, ftTimeStamp, ftFMTBcd, ftFixedWideChar, ftWideMemo); That seems to mostly match. Maybe the FPC2_1up construct fails? -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20091104/c6b5add2/attachment.html>

Reply by email

Michael Van Canneyt
to ik
ik wrote 8 lines
Thanks, I updated the records (with the FPC version) and it compiles properly, but it seems that ZeosLib is not a 64 bit ready. It uses pointer of integer and I experience a lot of weird behavior regarding bookmarks. I require to use Firebird and perform tasks on it. SQLdb does not push the transaction to the database, so I do not know what else to use in Lazarus 64 bit.

I use firebird and SQLDB daily. Works like a charm.

What do you mean with 'SQLDB does not push the transaction to the database' ?

Michael.

Reply by email

ik
to Michael Van Canneyt: I use firebird and SQLDB daily. Works like a charm. What do you mean with 'SQLDB does not…

When Insert data, and I post it, even thou I'm doing:

Transaction.Commit;

It does not exists on the database itself. and when I close the connection and reopen it, the new values does not exists.
I might be missing something here...

Ido

http://ik.homelinux.org/

Michael Van Canneyt wrote 29 lines
On Wed, 4 Nov 2009, ik wrote: Thanks, I updated the records (with the FPC version) and it compiles > properly, but it seems that ZeosLib is not a 64 bit ready. > It uses pointer of integer and I experience a lot of weird behavior > regarding bookmarks. > > I require to use Firebird and perform tasks on it. SQLdb does not push the > transaction to the database, so I do not know what else to use in Lazarus > 64 > bit. > I use firebird and SQLDB daily. Works like a charm. What do you mean with 'SQLDB does not push the transaction to the database' ? Michael. -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20091104/b29909a4/attachment.html>

Reply by email

Vincent Snijders
to ik
ik wrote
When Insert data, and I post it, even thou I'm doing:

ApplyUpdates?

Show quoted text 5 lines
Transaction.Commit; It does not exists on the database itself. and when I close the connection and reopen it, the new values does not exists. I might be missing something here...

Vincent

Reply by email

Michael Van Canneyt
to Vincent Snijders
Vincent Snijders wrote 10 lines
ik schreef: > When Insert data, and I post it, even thou I'm doing: > ApplyUpdates? > Transaction.Commit; > > It does not exists on the database itself. and when I close the connection > and reopen it, the new values does not exists. > I might be missing something here...

Like Vincent said: If you use

Dataset.Insert;
// Set field values here
Dataset.Post;

Then you need 2 more statements:

Dataset.ApplyUpdates;       // this will execute the necessary update statements on the database.
Dataset.Transaction.Commit; // or better yet, CommitRetaining.

To actually update the database.

Michael.

Reply by email