executeQuery verwandelt Werte in Kleinbuchstaben
Moderator: Moderatoren
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
executeQuery verwandelt Werte in Kleinbuchstaben
Wenn ich über eine geöffnete Session auf dem PostGre eine neue Datenbank erzeugen will, bleibt mit nur oSession:executeQuery("CREATE DATABASE 'Datenbankname'"). Es entsteht dabei aber eine Datenbank, die 'datenbankname' heißt. Mit dem SQL-Kommando geht das nicht, weil es mit solchen Ausdrücken nicht umgehen kann. Kennt jemand eine Lösung?
Herzlich,
Tom
Tom
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2518
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: executeQuery verwandelt Werte in Kleinbuchstaben
Auf CREATE DATABASE muss doch der Tabellenname als Klartext ohne Anführungszeichen folgen!???
z.B. "CREATE DATABASE actionindex WITH OWNER = postgres TEMPLATE = template0 ENCODING = 'Latin-1' LC_COLLATE = 'C' LC_CTYPE = 'C' TABLESPACE = pg_default CONNECTION LIMIT = -1;"
z.B. "CREATE DATABASE actionindex WITH OWNER = postgres TEMPLATE = template0 ENCODING = 'Latin-1' LC_COLLATE = 'C' LC_CTYPE = 'C' TABLESPACE = pg_default CONNECTION LIMIT = -1;"
Valar Morghulis
Gruss Carlo
Gruss Carlo
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: executeQuery verwandelt Werte in Kleinbuchstaben
@Carlo: Ja. Wird aber in Kleinbuchstaben umgewandelt.
Herzlich,
Tom
Tom
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2518
- Registriert: Mi, 28. Jul 2010 17:16
- Hat sich bedankt: 12 Mal
- Danksagung erhalten: 77 Mal
Re: executeQuery verwandelt Werte in Kleinbuchstaben
Hallo Tom
Alles Kleinbuchstaben für Namen ist eigentlich die empfohlene Schreibweise.
Ich würde mal Alaska fragen ob Sie in "executeQuery" eine entsprechende Umwandlungsfunktion eingebaut haben.
Alles Kleinbuchstaben für Namen ist eigentlich die empfohlene Schreibweise.
Ich würde mal Alaska fragen ob Sie in "executeQuery" eine entsprechende Umwandlungsfunktion eingebaut haben.
Valar Morghulis
Gruss Carlo
Gruss Carlo
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: executeQuery verwandelt Werte in Kleinbuchstaben
Hallo, Carlo.
Im PostGreSQL-Server jedenfalls nicht, und der agiert case-sensitiv. Wenn ich mit "CREATE DATABASE MeinTest" anlege, entsteht via oSession:executeQuery() "meintest", und wenn ich dann mit "MeinTest" zu konnektieren versuche, schlägt das fehl, während es funktioniert, wenn ich "MeinTest" im Server händisch anlege. Klar kann ich die Logik darauf ausrichten, aber wenn ein IT-Admin die Datenbank vorsorglich angelegt hat, und hat dabei Groß- und Kleinbuchstaben benutzt, finde ich sie nicht, wenn ich standardmäßig nur nach Kleinbuchstaben suche. Aber ich finde es generell ein wenig irritierend, dass hier eine Umwandlung stattfindet.Alles Kleinbuchstaben für Namen ist eigentlich die empfohlene Schreibweise.
Herzlich,
Tom
Tom
- Marcus Herz
- 1000 working lines a day
- Beiträge: 861
- Registriert: Mo, 16. Jan 2006 8:13
- Wohnort: Allgäu
- Hat sich bedankt: 39 Mal
- Danksagung erhalten: 197 Mal
- Kontaktdaten:
Re: executeQuery verwandelt Werte in Kleinbuchstaben
SQL Abfragen in Postgres erwarten alle Feld- und Tabellennamen in Kleinbuchstaben, ist etwas in Postgres groß, muss es in " (Doppeltes Hochkomma) eingeschlossen werden
Gruß Marcus
Den Kopf in den Sand zu stecken verbessert die Welt auch nicht.
Den Kopf in den Sand zu stecken verbessert die Welt auch nicht.
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9388
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 104 Mal
- Danksagung erhalten: 362 Mal
- Kontaktdaten:
Re: executeQuery verwandelt Werte in Kleinbuchstaben
Hallo, Marcus.
Stimmt - danke für die Info!
Stimmt - danke für die Info!
Herzlich,
Tom
Tom
- Marcus Herz
- 1000 working lines a day
- Beiträge: 861
- Registriert: Mo, 16. Jan 2006 8:13
- Wohnort: Allgäu
- Hat sich bedankt: 39 Mal
- Danksagung erhalten: 197 Mal
- Kontaktdaten:
Re: executeQuery verwandelt Werte in Kleinbuchstaben
Eckige Klammer geht auch, nötig wenn leerzeichen im fekdnamen enthaltne sind, was postgres erlaubt, Alaska aber nicht kanm
Gruß Marcus
Den Kopf in den Sand zu stecken verbessert die Welt auch nicht.
Den Kopf in den Sand zu stecken verbessert die Welt auch nicht.