Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL und Bindestrich im Feldnamen (https://www.delphipraxis.net/47834-sql-und-bindestrich-im-feldnamen.html)

Schiller 17. Jun 2005 08:35

Re: SQL und Bindestrich im Feldnamen
 
Das letzte Statement heißt: SELECT * FROM flaechen.db magic WHERE magic."BT-ID"=17
Antwort: ungültiger Feldname: BT-ID

Andere Statements wie SELECT * FROM flaechen.db WHERE "BT-ID"=17
oder SELECT * FROM flaechen.db WHERE 'BT-ID'=17
oder SELECT * FROM flaechen.db WHERE `BT-ID`=17
bringen Antworten wie
Keine Übereinstimmung der Typen im Ausdruck

marabu 17. Jun 2005 08:44

Re: SQL und Bindestrich im Feldnamen
 
Die Syntax, die ich dir vorgestellt habe, ist korrekt und funktioniert bei mir. Die anderen Schreibweisen können nicht funktionieren. Durch das Minus-Zeichen muss der Bezeichner in Quotes verpackt werden. Werden Quotes verwendet, dann muss ein qualifizierter Name verwendet werden. So sind die Regeln.

Ich habe mit IDAPI32.DLL Version 5.2.0.2 getestet. Was verwendest du?

marabu

Schiller 17. Jun 2005 08:49

Re: SQL und Bindestrich im Feldnamen
 
Ich verwende dieselbe Version.
Was ist ein qualifizierter Name?

marabu 17. Jun 2005 08:52

Re: SQL und Bindestrich im Feldnamen
 
"tableName"."fieldName"

Wenn du nur den Feldnamen in Quotes packst, dann wird dir ein Literal ausgegeben.

marabu

marabu 17. Jun 2005 09:17

Re: SQL und Bindestrich im Feldnamen
 
Zitat:

Das letzte Statement heißt: SELECT * FROM flaechen.db magic WHERE magic."BT-ID"=17
Antwort: ungültiger Feldname: BT-ID
Diese Fehlermeldung kommt übrigens, wenn das Feld mit dem angegeben Namen nicht in der Tabelle vorhanden ist...

marabu

Schiller 17. Jun 2005 09:35

Re: SQL und Bindestrich im Feldnamen
 
Danke. Jetzt hat sich das Problem gelöst :lol:
Der entscheidende Tipp war der qualifizierte Name.
Ich habe nur leider im laufe der Untersuchungen den Feldnamen falsch geschrieben :oops:
sodass ich zunächst eine "falsche" Fehlermeldung bekam.
Danke nochmal :love:


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:49 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz