Search found 263 matches
- 19.05.2021, 14:32
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Is it possible to return more detailed error message from Firebird?
- Replies: 6
- Views: 687
Re: Is it possible to return more detailed error message from Firebird?
This code shows every entry of Firebird status vector in my app function GetIBSpecificData(E: Exception): TZIBSpecificData; begin if E is EZDatabaseError then Result := (E as EZDatabaseError).SpecificData as TZIBSpecificData else if E is EZIBSQLException then Result := (E as EZIBSQLException).Specif...
- 19.05.2021, 13:49
- Forum: Feature Requests
- Topic: Deferred Lobs feature suggestion
- Replies: 18
- Views: 1019
Re: Deferred Lobs feature suggestion
Serializing enums only requires a bit of code: With "array[TFontStyle] of string " you can replace multiple if's by loop; next step would be GetEnumName/GetEnumValue Regarding the options: yep they're quite cumbersome. But wide range of supported engines and options requires flexibility t...
- 19.05.2021, 13:05
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Two TZParams bugs
- Replies: 9
- Views: 428
Re: Two TZParams bugs
Well, while idea of params keeping their values on SQL change still seems dangerous to me, I think compatibility is at the 1st place. IBExpress and FireDAC seem copying values so be it
- 19.05.2021, 12:42
- Forum: ZeosLib 7.2 Forum
- Topic: Connection issue (maybe a bug?)
- Replies: 4
- Views: 289
Re: Connection issue (maybe a bug?)
Btw, there is abstract TZExceptionSpecificData class and property EZSQLThrowable.SpecificData: TZExceptionSpecificData for DBC-specific data if Errorcode or SQLcode is not enough. Currently implemented for Firebird only AFAIK but could be extended for other drivers as well
- 19.05.2021, 12:26
- Forum: ZeosLib 7.1 stable Forum
- Topic: ZEOSDBO-7.1.3a-stable and Delphi7 -proxy
- Replies: 4
- Views: 592
Re: ZEOSDBO-7.1.3a-stable and Delphi7 -proxy
Additionally you can use: - port mapping. Setup a software on a host that is reachable from client side and could reach DB server to listen on some port and redirect traffic to a port where DB server lives. Then from client just talk to that host client => portmapper_host => DB server - local proxy ...
- 19.05.2021, 09:13
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: PostgreSQL timestamp with timezone issue
- Replies: 16
- Views: 1371
Re: PostgreSQL timestamp with timezone issue
General note: storing timestamps with offsets is just like storing strings in different codepages. It's even worse because offsets change. You pre-calculate current offset and a second later winter=>summer time happens. Or offset changes. How about calculating correct offset for a time in the past i...
- 26.11.2020, 23:57
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Problem with LCL definition
- Replies: 10
- Views: 545
Re: Problem with LCL definition
Don't you guys forget that changing components in Lazarus involves rebuilding of the whole IDE? Of course it has its own build options which could use quick compile instead of full rebuild. That's why changed code isn't used in resulting binary
- 25.11.2020, 01:00
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Improving Time Fields fractional seconds display
- Replies: 3
- Views: 240
Re: Improving Time Fields fractional seconds display
From my FB utils: const IBTimeScaleStart: array[1..3] of Word = (17, 11, 1858); // November 17, 1858 IBTimeScale_TDateTime_Delta = 15018; // [days] TDateTime(0) - IBTimeScaleStart TIME_MSEC_PRECISION = TIME_SECONDS_PRECISION div MSecsPerSec; // timestamp_time is in msec/10 units implementation funct...
- 25.11.2020, 00:45
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Driver loading issue when connecting to PostgreSQL after connecting to Oracle
- Replies: 31
- Views: 2495
- 23.11.2020, 15:35
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Driver loading issue when connecting to PostgreSQL after connecting to Oracle
- Replies: 31
- Views: 2495
Re: Driver loading issue when connecting to PostgreSQL after connecting to Oracle
I don't know how it is being handled, but if a new handle is opened each time a connection is opened but not closed afterwards, your application will crash due to handle / memory outage if it is connecting / disconnecting rapidly. No matter how many times LoadLibrary is called, Windows only loads s...
- 17.08.2020, 09:40
- Forum: Lazarus / Freepascal
- Topic: Save XML file from database to hard disk
- Replies: 3
- Views: 302
Re: Save XML file from database to hard disk
My guess (haven't worked with Pg): is Pg XML type really supported? It looks like a custom one. Probably it needs special handling
- 23.07.2020, 12:38
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: How hard it is to implement a new event in TZSQLMonitor?
- Replies: 26
- Views: 1122
Re: How hard it is to implement a new event in TZSQLMonitor?
GTC64 is for storing big numbers, it has the same precision as GTC32
- 20.07.2020, 09:40
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: List of connection properties?
- Replies: 36
- Views: 2270
Re: List of connection properties?
All in all, what we have: - Descriptions in sources what we want: - Descriptions in IDE code editor (when sources are accessible). - Descriptions in IDE visual editors (which are called from BPL => compiled package => no source available but only runtime variables) I know no option that could help w...
- 14.07.2020, 11:51
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: How to handle transactions properly with Zeos?
- Replies: 19
- Views: 2708
Re: How to handle transactions properly with Zeos?
Fantastic!! Great work!!EgonHugeist wrote: ↑11.07.2020, 07:13 TZTransaction added on 7.3-testing.
TZDataSet has UpdateTransaction property now.
TZReadOnlyDataSet and descendants have a Transaction property now
- 29.06.2020, 12:44
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: How hard it is to implement a new event in TZSQLMonitor?
- Replies: 26
- Views: 1122
Re: How hard it is to implement a new event in TZSQLMonitor?
The main purpose of it was to get rid of the continuous, expensive .FieldByName lookups as the application runs. Regardless of an application it's a usual pattern of pre-caching a result of a slow function. Luckily TDataset easily allows it f := DS.FieldByName('foo'); for i := 0 to 100000 do begin ...