AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Where als Spaltenname
Thema durchsuchen
Ansicht
Themen-Optionen

Where als Spaltenname

Ein Thema von der-C · begonnen am 29. Okt 2004 · letzter Beitrag vom 29. Okt 2004
Antwort Antwort
Seite 1 von 2  1 2      
der-C

Registriert seit: 29. Okt 2004
68 Beiträge
 
Delphi 6 Professional
 
#1

Where als Spaltenname

  Alt 29. Okt 2004, 14:27
hallo

ich greife mit den Zeos komponenten auf eine access-Datenbank zu
darin ist eine Tabelle mit einer Spalte mit dem Spaltenname "Where" (also ohne die "")

nun, bei jeder select abfrage oder Alter Table nörgelt er rum.
wie mach ichs?

es kommen immer solche abfragen zustande:
z.B. SELECT Where FROM Tabellenname WHERE Where="5"

mit " oder ' hab ichs schon probiert er legt dann immer eine Spalte mit Namen: "Where" oder 'Where' an

  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Where als Spaltenname

  Alt 29. Okt 2004, 14:29
Hai der-c

ersteinmal: "Herzlich Willkommen in der Delphi-PRAXIS".

Die einfachste Lösung: Verwende nie reservierte Bezeichner der Datenbank als Spaltennamen!
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Where als Spaltenname

  Alt 29. Okt 2004, 14:32
hi,

war das nicht bei SQL so, dass man spaltennamen usw. in ` setzt?

select * from `tab` where `where` = 'da' so in etwa.

Aenogym
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
der-C

Registriert seit: 29. Okt 2004
68 Beiträge
 
Delphi 6 Professional
 
#4

Re: Where als Spaltenname

  Alt 29. Okt 2004, 14:34
wow, sogar mit Begrüßung, danke

so weiter,
es liegt aber nicht in meiner hand welche namen der benutzter meines programmes verwendet
oder soll ich alle SQL-Tags verbieten, das sind ja recht viele oder?

@ Aenogym
hmm, das hab ich noch nicht getstet werds mal versuchen...
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Where als Spaltenname

  Alt 29. Okt 2004, 14:36
Zitat von der-C:
wow, sogar mit Begrüßung, danke
Wir sind halt ein freundliches Form

Zitat:
es liegt aber nicht in meiner hand welche namen der benutzter meines programmes verwendet
oder soll ich alle SQL-Tags verbieten, das sind ja recht viele oder?
Es ist zu überlegen ob dies nicht die bessere Wahl ist. Selbst wenn Du eine Lösung mit " oder ' oder [] findest
Weisst Du nicht was nach dem nächsten Treiberupdate passiert.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
der-C

Registriert seit: 29. Okt 2004
68 Beiträge
 
Delphi 6 Professional
 
#6

Re: Where als Spaltenname

  Alt 29. Okt 2004, 14:43
Das is nen Argument.
Na da werde ich wohl in den sauren Apfel (oder Tastatur) beissen müssen.

Danke
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.079 Beiträge
 
Delphi 12 Athens
 
#7

Re: Where als Spaltenname

  Alt 29. Okt 2004, 15:03
Wenn die Tabelle nur von deinem Programm erstellt/verwendet wird und du somit auf die Spaltennamen Einfluß nehmen kannst, könntest du ja auch einfach ein Prefix vor die Spaltennamen setzen, damit ist dann der Name relativ egal. (nur Leer- und Sonderzeichen machen dann noch Probleme)

Code:
SELECT Tab_Where FROM Tabellenname WHERE Col_Where="5"
Für die Leerzeichen gibt es allerding die bekannte Lösung ^^
Code:
SELECT [b][color=red]`[/color][/b]Tab_Where[b][color=red]`[/color][/b] FROM Tabellenname WHERE [b][color=red]`[/color][/b]Col_Where[b][color=red]`[/color][/b]="5"
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Where als Spaltenname

  Alt 29. Okt 2004, 15:12
Ich musste mal, weil ich SQL in eine recht große DB-Anwendung einführen wollte, die gesamte DB, und tausende Zeilen langen Code anpassen, da ein Feld "TIME" hieß . Vorher wurde halt nicht mit SQL gearbeitet, sondern mit Filtern und .FieldByName... das war ziemlich ekelig, und den Hauptentwickler des Programms hab ich dann erst mal zurecht gestutzt . Man spart sich Ärger wenn man von vorne herein SQL-Tokens ausschließt/ausschließen lässt.

Gruss,
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
der-C

Registriert seit: 29. Okt 2004
68 Beiträge
 
Delphi 6 Professional
 
#9

Re: Where als Spaltenname

  Alt 29. Okt 2004, 15:16
@ himitsu
das ist mir auch so eingefallen ABER,
mein programm ist fast fertig und es währe recht aufwendig diese sache einzufügen,
wenns mir früher eingefallen wär hätt ichs so gemacht
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Where als Spaltenname

  Alt 29. Okt 2004, 15:27
Zitat von der-C:
wenns mir früher eingefallen wär hätt ichs so gemacht
Hätt der Hund nich geschissen, hätter nen Hasen gefangen...

Im Ernst: Die einzige saubere Lösung ist es das anzupassen. Dann musst du eben ein Mal in den sauren Apfel beissen, vergisst das aber dann nie mehr. Und ich spreche, wie gesagt, aus ganz eigener Erfahrung.


\\edit: Falsches Zitat genommen
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz