Diskussion:MySQL Unterscheidung von Groß- u. Kleinschreibung in Tabellennamen: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „== Hinweis == Normalerweise wird eine Abfrage von REFLEX an die Datenbank abhängig von der SQL-Datenbank-Einstellung in der INI-Datei von REFLEX …“)
 
(Hinweis)
 
Zeile 10: Zeile 10:
  
 
# 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.
 
# 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.
+
# Bei komplexen Abfragen mit mehreren Tabellen 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.

Aktuelle Version vom 7. Februar 2013, 23:02 Uhr

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:

  1. 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.
  2. Bei komplexen Abfragen mit mehreren Tabellen 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.