Ich lese Daten aus einer MDB-Datei (MSAccess 2000-Format). Es gibt einige Tabellen, die Doppelpunkte in ihren Namen haben. Ich erhalte eine Ausnahme, wenn ich versuche Abfragen auf diese Tabellen zu öffnen:Wie führe ich eine Abfrage für eine Tabelle mit einem Doppelpunkt im Namen durch?
EOleException with message 'Parameter object is improperly defined. Inconsistent or incomplete information was provided'.
dies ist mein Code:
procedure TForm1.Button1Click(Sender: TObject);
var
Query: TADOQuery;
begin
Query := TADOQuery.Create(nil);
Query.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'+
'Data Source=DB.mdb;Persist Security Info=False';
Query.SQL.Text := 'select * from [Table1:1]';
try
Query.Open;
finally
Query.Free;
end;
end;
Vergessen Sie nicht, eventuell zuvor hinzugefügte Parameter zu entfernen. Überprüfen Sie die Eigenschaft 'Parameters'. – GolezTrol
@GolezTrol: Wird 'SQL.Text' nicht automatisch' Parameter' gelöscht? –
Wenn Sie ParamCheck auf false setzen, denke ich, dass dies nicht der Fall ist. Es lässt nur die Parameter, so dass Sie sie selbst verwalten können. 99% sicher. ;) – GolezTrol