Hallo Tom,
ich muss Dir widersprechen.
Habe ich erwartet.
hehe :-)
Weder setzt es mehr Rechte voraus als "SHOW TABLES", noch ist es komplizierter. Es ist einfacher, weil es ein ganz normales SELECT-Statement ist.
SELECT
TABLE_NAME
FROM
INFORMATION_SCHEMA.TABLES
WHERE
TABLE_NAME = '<gewünschter Tabellenname>'
>
> Das ist inzwiwschen ein Standardposting von Dir, das sogar gerade vor mir auf dem Tisch liegt.
>
> Ich bin mir nur vollkommen unsicher, wie ich die Tabelle einer DB zuordnen kann. Es nützt mir ja nichts, die Existenz einer Tabelle `test` abzufragen, wenn ich gar nicht weiß, ob sie zu meiner Datenbank gehört.
nutze die Spalte TABLE\_SCHEMA.
> Wie wird das geregelt und wie kann ich verhindern, dass bei gemeinsam genutzen Datenbankservern jeder Nutzer die Tabellen der anderen Nutzer sehen kann?
jeder Nutzer kann die Tabellen sehen, die er sehen kann. Hört sich doch trivial an. Hast Du keine Berechtigungen für die Datenbank db\_x, dann siehst Du auch deren Tabellen nicht. Im Shared-Hosting-Bereich gibt es zumeist (außer dem Superuser) genau einen Datenbanknutzer, der mit einer bestimmten DB arbeiten darf.
Freundliche Grüße
Vinzenz