Hallo, ich würde gerne eine ganz einfache Abfrage machen: select * from Adressbuch WHERE Nachname = ‘Maier’; FEHLER: Spalte »nachname« existiert nicht ZEILE 2: WHERE Nachname = ‘Maier’; obwohl die Spalte “Nachname” definitiv existiert! kann mir jemand sagen, was ich falsch mache? warum wird bei der Fehlermeldung “nachname” klein geschrieben obwohl ich es definitiv richtig geschrieben habe!
Dein Problem ist die GROß/klein-ScHrEiBuNg des Spaltennamens. Also, Select from “Adressuch” WHERE “Nachname” = ‘Maier’ … oder so ähnlich. Vermutlich hast Du die Tabelle mit PGAdmin angelegt und Nachname mit großem N geschrieben.
Ach ja: bitte nicht ‘select *’ verwenden, zumindest nicht in produktivem Code. Warum - das habe ich hier schon mal erklärt.
die Tabellen hab ich mit Python bzw. mit Django angelegt.
mit den folgenden Befehl:
class Adressbuch(models.Model): Anrede = models.CharField(max_length=200) Vorname = models.CharField(max_length=200) WeitereVornamen = models.CharField(max_length=200) Nachname = models.CharField(max_length=200) def str(self): return self.slug class Admin: pass weder Groß noch Kleinschreibung funktioniert da, ja, ich nehm pgAdmin3 wie kann ich sonst eine Abfrage machen?
Schrieb ich doch, oder? Du mußt die Felder halt in “Name” schreiben, also mit " drum herum.
Andreas
Um es klar zu sagen: psql verwandelt alles in der SQL-Zeile, was nicht gequotet ist (in ") in kleinbuchstaben, ehe es den Befehl ausführt? Hab ich bislang auch nicht so genau gewusst, hat mich mein schon aus der Parallelwelt dos/unix gewöhnter “Feldnamen immer klein”-Stil vor Problemen bewahrt. Ist aber logisch und man muss ja nur bei der Tabellendefinition aufpassen, wenn da alles klein ist, ist es nachher egal, wie man es schreibt…
cu jth