Diskussion:MySQL Unterscheidung von Groß- u. Kleinschreibung in Tabellennamen
Aus GEVITAS
Hinweis
Normalerweise wird eine Abfrage von REFLEX an die Datenbank abhängig von der SQL-Datenbank-Einstellung in der INI-Datei von REFLEX angepasst.
- Bei mySQL werden alle Tabellennamen in der Abfrage in Kleinbuchstaben umgewandelt.
- Bei ORACLE© werden alle Tabellennamen in der Abfrage in Großbuchstaben umgewandelt. ORACLE© verlangt, dass die Tabellennamen so verwendet werden.
- Bei Microsoft SQL Server© ist die Angabe des Tabellennamens egal, es werden Groß- und Kleinbuchstaben akzeptiert. Der Grund liegt darin, dass Tabellen bei Microsoft SQL Server© keine Dateien sind, sondern Verweise auf Tabellen, die in einer Datenbank-Datei gespeichert werden.
Wenn es zu einer Fehlermeldung kommt, kann das zwei Ursachen haben:
- Der Programmierer hat vergessen, den Tabellennamen einer Abfrage entsprechend zu kennzeichnen. Der Kernel in REFLEX erkennt somit nicht, dass/wo es in der Abfrage einen Tabellennamen gibt und setzt diesen nicht in Klein- oder Großbuchstaben.
- Bei komplexen Abfragen muss der Programmierer für jeden Tabellennamen der Abfrage einen sog. Alias-Namen vergeben. Das ist ein relativ komplizierter Vorgang, bei dem man schnell mal etwas übersieht.