Search found 17 matches
- 07.11.2022, 10:33
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
- Replies: 5
- Views: 227
Re: query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
I had not use TTimer. As I understand it works in same thread.
- 31.10.2022, 08:17
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
- Replies: 5
- Views: 227
Re: query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
I use TThread instead of timer on Windows.
- 28.10.2022, 14:48
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
- Replies: 5
- Views: 227
query raise SIGSEGV in not main thread if connection lost (Linux, Firebird)
Hi. Use Zeos r7867, Lazarus 2.2.2, FPC 3.2.2, Ubuntu 16.04 32bit, Firebird 3.0. Testing reconnection after connection lost. Found, that if TZReadOnlyQuery.Open executed in different (not main) thread on connection lost raises SIGSEGV, so connection can not be reopened. Seems, connection object is br...
- 05.09.2022, 16:20
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Firebird stored procedure returning void dataset raise exception
- Replies: 6
- Views: 347
Re: Firebird stored procedure returning void dataset raise exception
Solved both problem by changing TZStoredProc to TZReadOnlyQuery with SQL:
Works both with FB 3 and 2.5
Code: Select all
SELECT * FROM VOID_TEST_PROC(:P0)
- 05.09.2022, 13:25
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: problem with stored procedure returning 2 datasets (MySQL 8)
- Replies: 1
- Views: 125
Re: problem with stored procedure returning 2 datasets (MySQL 8)
Solved by changing NextRecordSet (aka NextResultSet) to SetResultSet(1) for second DS.
"Open" does not clean FActiveResultIndex, so it stores from previous call. Have to use absolute value via SetResultSet.
"Open" does not clean FActiveResultIndex, so it stores from previous call. Have to use absolute value via SetResultSet.
- 05.09.2022, 10:35
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Postgres batch update can not work
- Replies: 3
- Views: 284
Re: Postgres batch update can not work
Solved by replacing SQL from UPDATE BATCH_TEST_TABLE SET VAL_FIELD = :P0 WHERE VAL_FIELD = :P1 to UPDATE batch_test_table SET val_field = "CAST"(r.c0 as integer) FROM (SELECT :p0 as c0, :p1 as c1 ) r WHERE val_field = "CAST"(r.c1 as integer) Version with CTE WITH r(c0 ,c1 ) AS (S...
- 01.09.2022, 15:32
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Batch inserts with Firebird 3
- Replies: 10
- Views: 681
Re: Batch inserts with Firebird 3
I can't connect to Firebird server (version WI-V6.3.7.33374 Firebird 3.0) with FB 2.5 client library (version 2.5.9.27139). Do not know, why. Keep using FBCLIENT.DLL version 3.0.7.33374. But your result looks even more strange. As I understand tracing TZAbstractFirebirdStatement.Prepare, Zeos device...
- 01.09.2022, 10:37
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Firebird stored procedure returning void dataset raise exception
- Replies: 6
- Views: 347
Re: Firebird stored procedure returning void dataset raise exception
Thanks. Docs say so, but it does not work in Delphi 7. Not sure, than it's really important. Check for myself.
- 01.09.2022, 08:19
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Postgres batch update can not work
- Replies: 3
- Views: 284
Postgres batch update can not work
Batch update can not work with Postgres - function unnest can not be used in WHERE clause.
Generated query:
Table DDL:
Project attached.
Generated query:
Code: Select all
UPDATE BATCH_TEST_TABLE SET VAL_FIELD = unnest($1::int4[]) WHERE VAL_FIELD = unnest($2::int4[])
Code: Select all
CREATE TABLE BATCH_TEST_TABLE (
VAL_FIELD INTEGER
);
- 31.08.2022, 15:14
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Firebird stored procedure returning void dataset raise exception
- Replies: 6
- Views: 347
Re: Firebird stored procedure returning void dataset raise exception
Hi. Thanks. Have updated to r7867. Both problems are not solved. BTW. Isn't right time format in log 'hh:nn:ss"? "mm" - is month. function TZLoggingFormatter.Format(LoggingEvent: TZLoggingEvent): SQLString; ... SQLWriter.AddDateTime(LoggingEvent.Timestamp, 'yyyy-mm-dd hh:mm:ss.fff', R...
- 31.08.2022, 14:13
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: problem with stored procedure returning 2 datasets (MySQL 8)
- Replies: 1
- Views: 125
problem with stored procedure returning 2 datasets (MySQL 8)
Second dataset is readable in first call of procedure only.
Procedure DDL:
Test project attached.
Procedure DDL:
Code: Select all
CREATE PROCEDURE `TwoDSTest`()
BEGIN
SELECT * FROM (VALUES ROW(1.1, 1.2), ROW(2.1, 2.2)) as T(f1, f2);
SELECT * FROM (VALUES ROW(3), ROW(4), ROW(5)) as T2(f3);
END
- 30.08.2022, 16:10
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Firebird stored procedure returning void dataset raise exception
- Replies: 6
- Views: 347
Re: Firebird stored procedure returning void dataset raise exception
One more. Third execution of selectable proceture raise exception 'Cursor is already open; GDS Code: 335544841;...". To reproduce change ExecButtonClick to: procedure TForm1.ExecButtonClick(Sender: TObject); var i: integer; begin with ZStoredProc1 do begin Params[0].AsInteger := 1; Open; i := 0...
- 30.08.2022, 11:23
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Firebird stored procedure returning void dataset raise exception
- Replies: 6
- Views: 347
Firebird stored procedure returning void dataset raise exception
With Firebird (3 and 2.5) stored procedure returning void dataset raise exception 'Row buffer is not assigned' at function TZRowAccessor.IsNull(ColumnIndex: Integer): Boolean; Call stack: TZRowAccessor.IsNull(0) TZAbstractCachedResultSet.IsNull(0) TZAbstractPreparedStatement.IsNull(1) TZAbstractCall...
- 29.08.2022, 13:11
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Batch inserts with Firebird 3
- Replies: 10
- Views: 681
Re: Batch inserts with Firebird 3
Hi.
OK. Is this example enough to debug?
OK. Is this example enough to debug?
- 29.08.2022, 08:27
- Forum: ZeosLib 7.3/8.0 Forum
- Topic: Batch inserts with Firebird 3
- Replies: 10
- Views: 681
Re: Batch inserts with Firebird 3
I can't see my posts in this topic. Try to resend last.
Delphi 7 project attached.
Create table:
Delphi 7 project attached.
Create table:
Code: Select all
CREATE TABLE BATCH_TEST_TABLE (
VAL_FIELD INTEGER
);