Hallo!
Ich habe folgendes Problem:
Mit dem untenstehenden Code erstelle ich eine AccessDatenbank mit einer Tabelle, die eine Spalte enthält.
Das funktioniert auch wunderbar: Klicken, Datenbank wird samt Tabelle erstellt.
Doch dann kommt eine Fehlrermeldung, dass eine gleichnamige Datenbank bereits existieren würde.
Eigentlich ist dem jedoch nicht so...
Hat jemand einen Rat?
Delphi-Quellcode:
function CreateAccessDatabase(Database : String) : Boolean;
var
AdoxCatalog : TADOXCatalog;
begin
AdoxCatalog := TADOXCatalog.Create(nil);
try
AdoxCatalog.Create1('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
Database);
result := true;
except
result := false;
end;
AdoxCatalog.Free;
end;
procedure TForm_Main.btn_StartClick(Sender: TObject);
var ADOXTable: TADOXTable;
begin
tblname := edt_tblname.Text;
dbname := edt_dbname.Text;
dbort := edt_dbort.Text;
if CreateAccessDatabase(dbort + dbname) = false then
begin
showmessage('Erstellen der Datenbank nicht möglich. Überprüfen sie Ihre Angaben!');
exit;
end;
Datamodule1.ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+dbort+dbname+';Persist Security Info=False';
ADOQuery1.Active := false;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Text:= 'CREATE TABLE Test_01 (`Feld_01` VARCHAR(255) NOT NULL)';
ADOQuery1.ExecSQL;
ADOQuery1.Active := true;
end;