Thema: Delphi No Such Table

Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#9

AW: No Such Table

  Alt 29. Sep 2017, 15:59
Eine Datanbank kann n Schemas enthalten, ein Schema kann n Tabellen enthalten.

In der Regel meldet man sich an der Datenbank an und "landet" dann in dem der Anmeldung zugeordneten Schema. Dort kann man dann per select * from tabelle auf Tabellen zugreifen. Es wird dann die implizite Annahme gemacht, dass man eine Tabelle aus dem Anmeldeschema meint.

Möchte man auf eine Tabelle in einem anderen Schema zugreifen, wird der Schemaname mit im SQL angegeben:select * from schema.tabelle .

Manche Datenbanken unterstützen auch datenbankübergreifende Abfragen:select * from datenbank.schema.tabelle In diesem Zusammenhang wird zuweilen dann auch von Katalog gesprochen.

Wenn Du bei Deinem Programm eine Anmeldung hast, die Dich sofort in das Schema Contentmasterdata "bringt", kannst Du diese Angabe auch weglassen. Dies macht die Statements dann auch übersichtlicher.

Verwirrend wird es oft, wenn man in einer Datenbank ein Schema hat, das dem Datenbanknamen entspricht. Also ungefähr sowas: select * from Contentmasterdata.Contentmasterdata.tabelle Hier ist die Verwirrung fast immer vorprogrammiert.

Allerdings ist das zuweilen von Datenbank zu Datenbank auch schonmal individuell unterschiedlich.

Welche spezifischen Besonderheiten für sqlite gelten, weiß ich nicht.
  Mit Zitat antworten Zitat