In the interests of helping anyone who has similar problems creating Tables for a Firebird Database, there are several errors to the code I posted above:
IBConnection1.ExecuteDirect('CREATE TABLE PATHS('+
'ID INTEGER NOT NULL UNIQUE PRIMARY KEY, '+
'PATH VARCHAR(800), '+
'INCEPTION DATETIME,'+
'UPDATE DATETIME,');
Should be:
IBConnection1.ExecuteDirect('CREATE TABLE PATHS('+
'ID INTEGER NOT NULL PRIMARY KEY, '+
'PATH VARCHAR(800), '+
'INCEPTION TIMESTAMP,'+
'DWGUPDATE TIMESTAMP)');
So, to reitterate, use the following to check if a table exists in the database:
tableList:= TStringList.Create;
IBConnection1.GetTableNames(tableList,False);
s:='MyTable';// Whatever the name of the table is.
i:=0;
while i<tableList.Count do
begin
if tableList.Strings[i]=s then
begin
break;
end;
inc(i);
end;
if i<tableList.Count then
// implement the IBConnection1.ExecuteDirect code above.
SQLTransaction1.Commit;