Hi,
Update Aurelius 3.0 to 3.5 and TDatabaseManager.UpdateDatabase don't update database any more, on existing data base
procedure TDatabaseManager.UpdateDatabase;
begin
ValidateDatabase;
if SQLExecutionEnabled then
ExecuteSQLStatements(SQLStatements, false);
//ExecuteSQLStatements(SQLStatements, true); 2? param must be True,
//to IgnoreErrors on ExecuteSQLStatements
end;
if some exeption raised like generator already exists, update is aborted.
I'm trying to rewrite UpdateDatabase method, but ExecuteSQLStatements is strict private
Thanks, Wagner
That's how it's supposed to be. But there is a regression in Aurelius.SQL.Firebird.pas file that maybe is the cause of your problem. Please contact us directly for a patch.
It appears to be having problems with generators in Firebird 2.5 too. When I verify my database it is showing all my generators as needing added again.
Steve, we have sent a patch to you as well.
Hi Wagner
Patch does not work. After uninstall aurelius 3.5 and install 3.0 and compare units( Aurelius.Schema.Firebird.pas):
procedure TFirebirdSchemaRetriever.GetSequences;
begin
....
'where (RDB$SYSTEM_FLAG is NULL) or (RDB$SYSTEM_FLAG <> 1) ' + //V3.0, work fine
'where (RDB$SYSTEM_FLAG is NULL) and not (RDB$SYSTEM_FLAG IN (1, 6)) ' +//V3.5, Don't Work
'where (RDB$SYSTEM_FLAG is NULL) or (RDB$SYSTEM_FLAG = 0)' + // Patch , Don't Work
...
end;
thanks Wagner
That's strange, what Firebird version are you using? Is it possible that you send us the .fdb file and your entity classes?
OK, sent
thanks
Just to close this topic, it was confirmed that the patch fixed the problem. A package rebuild was needed.