mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-12-05 08:27:17 +01:00
68 lines
2.2 KiB
Plaintext
68 lines
2.2 KiB
Plaintext
Hello again
|
|
|
|
with new version of Interbase objects suite
|
|
slightly changes the work with it. Main change
|
|
is TIBTransaction object, which overtake transaction
|
|
handling from TIBDatabase. TIBDataset no longer exists,
|
|
instead of it is TIBQuery now. Work with it is (I think)
|
|
shown in testib.pp program.
|
|
|
|
TIBTransaction has several methods for committing and
|
|
rollback of changes made to database.
|
|
|
|
Commit, Rollback : classic action taken, both methods
|
|
ENDS transaction.
|
|
CommitRetaining, RollbackRetaining : these methods
|
|
both do as same as Commit or Rollback, but environment
|
|
of transaction remains, so you don't need start new
|
|
transaction. This can be of use for frequent changes
|
|
to database, because it's faster than classic
|
|
Commit|Rollback & StartTransaction.
|
|
|
|
In short:
|
|
|
|
* Create TIBDatabase
|
|
* Create TIBTransaction
|
|
* Assign transaction to database
|
|
* Create TIBQuery
|
|
* Execute query
|
|
* Commit or rollback transaction, in short, end transaction
|
|
* Close TIBDatabase
|
|
|
|
Compiling:
|
|
|
|
Simply type 'make' for building interbase unit, if you wanna
|
|
test program type 'make examples'. For successfull compiling
|
|
you must have Interbase server installed, or you must have
|
|
libgds.so.* in ldpath. If linker shows errors like:
|
|
|
|
/usr/lib/libgds.so: undefined reference to `dlclose'
|
|
/usr/lib/libgds.so: undefined reference to `dlopen'
|
|
/usr/lib/libgds.so: undefined reference to `crypt'
|
|
/usr/lib/libgds.so: undefined reference to `dlsym'
|
|
testib.pp(92,1) Warning: Error while linking
|
|
|
|
you must to program source add compiler directives
|
|
|
|
{$ifndef BSD} // BSD has libdl in libc
|
|
{$linklib dl}
|
|
{$endif}
|
|
{$linklib crypt}
|
|
|
|
and all should be OK. For running testib you must have
|
|
testing database created. To create it, edit mkdb script,
|
|
set variable ISQL to full path to isql program (it is
|
|
set to /opt/interbase/bin/isql by default, which will work
|
|
on most systems) and run by typing 'sh mkdb'.
|
|
|
|
This units was built and tested on Linux, and I don't
|
|
know, if you can build it on Win32 or Dos platform.
|
|
Anyway, if you want to use it under windoze, you can
|
|
port it ;)
|
|
|
|
Volunteers, testers, suggestions etc. are always welcome,
|
|
mailto address below
|
|
|
|
Pavel Stingl
|
|
stingp1.eti@mail.cez.cz
|