Sonderzeichen in SQL Query
-
Hallo zusammen
Ich versuch momentan Daten aus einer Access Datenbank auszulesen. Das Problem ist allerdings, daß zwei meiner Tabellen WE-Prüfung und B-Teile heißen. Hier bekomme ich einen Syntaxfehler. Dies liegt wohl an den Sonderzeichen ( ö und -). Gibt es hier eine andere Möglichkeit außer die Tabelle umzubennen?
void __fastcall TForm1::Button1Click(TObject *Sender) { int AnzSpalten=6; Query->Close(); Query->SQL->Clear(); Query->SQL->Add("select * from WE-Prüfung where WE_ID=26"); Query->Open(); Query->First(); while (!Query->Eof) { for (int i=0;i<=AnzSpalten;i++) { Memo1->Lines->Add(Query->Fields->Fields[i]->AsString); } Query->Next(); } }MfG Stephan
-
Hast Du mal versucht die Tabellennamen in Hochkommas zu setzen?
-
Hallo zusammen
@Joe_M.
Ich habs bisher mit Hochkomma ' bzw Anführungszeichen " versucht, jedoch ohne Erfolg.
MfG Stephan
-
Mit BCH6 TQuery und Access 97 funktioniert das in Anführugnszeichen setzen ohne Probleme. Das ungültige Zeichen ist übrigens das Minus-Zeichen...
SELECT * FROM "WE-Beleg"
-
Hallo zusammen
@Joe_M.
Also ich verwende auch noch Access 97 jedoch noch BCB4 Pro, bekomme allerdings demnächst den BCB6 Pro. Werde es dann damit mal versuchen, und mich nochmals melden.
Vielen Dank für deine Hilfe.MfG Stephan
-
Setz die Tabelle doch mal in [].. zumindest ist das so bei SQL angesagt.

-
Hallo zusammen
@MikeSPK
Vielen dank für den Hinweis.
Mit den eckigen Klammern funktioniert es nun.Query->Close(); Query->SQL->Clear(); Query->SQL->Add("select WE_ID, Anzahl_Los, Lieferversuch, TTNr from [WE-Prüfung] where WE_ID=:WeId"); Query->ParamByName("WeId")->Value = StrToInt(Edit1->Text); Query->Open(); Query->First();MfG Stephan