According to Firebird Support there needs to be a change to TZInterbase6DatabaseMetadata.GetSequences to account for a non-null value on column rdb$system_data in the table rdb$generators
this only became a problem for me when i started using firebird 2.0
i've changed my source like so...
[syntax="delphi"]
function TZInterbase6DatabaseMetadata.GetSequences;
begin
...
if Result = nil then
begin
...
SQL := ' SELECT RDB$GENERATOR_NAME FROM RDB$GENERATORS ' +
'WHERE RDB$SYSTEM_FLAG IS NULL OR RDB$SYSTEM_FLAG = 0';
...
end;
end;
[/syntax]
[bug_fixed] Fix for TZInterbase6DatabaseMetadata.GetSequence
Moderators: EgonHugeist, mdaems
-
- Fresh Boarder
- Posts: 19
- Joined: 25.10.2006, 19:25
- mdaems
- Zeos Project Manager
- Posts: 2766
- Joined: 20.09.2005, 15:28
- Location: Brussels, Belgium
- Contact:
Hi,
Can I use brackets like this :
[syntax="delphi"]
function TZInterbase6DatabaseMetadata.GetSequences;
begin
...
if Result = nil then
begin
...
SQL := ' SELECT RDB$GENERATOR_NAME FROM RDB$GENERATORS ' +
'WHERE (RDB$SYSTEM_FLAG IS NULL OR RDB$SYSTEM_FLAG = 0)';
...
end;
end;
[/syntax]
Because an AND Condition can be added in the next IF block.
I don't use firebird,so I can't test.
Mark
Can I use brackets like this :
[syntax="delphi"]
function TZInterbase6DatabaseMetadata.GetSequences;
begin
...
if Result = nil then
begin
...
SQL := ' SELECT RDB$GENERATOR_NAME FROM RDB$GENERATORS ' +
'WHERE (RDB$SYSTEM_FLAG IS NULL OR RDB$SYSTEM_FLAG = 0)';
...
end;
end;
[/syntax]
Because an AND Condition can be added in the next IF block.
I don't use firebird,so I can't test.
Mark
I already try it. But the problem is not really related to protocol definition. It's related to the structure of the database that created under FB 2.0 (ODS version 11) because we can still use protocol 1.5 to connect to FB 2.0
Yes, this is can fix the problems and it runs for FB 1.5 (ODS 10.1) and FB2 (ODS 11)
Yes, this is can fix the problems and it runs for FB 1.5 (ODS 10.1) and FB2 (ODS 11)