PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

postgres:Was macht eigentlich die Abfrage 'select * from user'?

In diesem Zusammenhang user ist eine reservierte interne Postgres-Funktion, die den aktuellen Benutzer darstellt, der bei der Datenbank angemeldet ist.

Diese Abfrage kann auch geschrieben werden als:

SELECT user;

Was das gleiche ergeben sollte. Beachten Sie, wenn Sie tatsächlich eine Tabelle mit dem Namen user referenzieren oder erstellen möchten Sie müssen Anführungszeichen verwenden oder das Schema, in dem es lebt, vollständig qualifizieren. Zum Beispiel:

CREATE TABLE "user"
(
  id int2 not null
);

wird funktionieren, aber:

CREATE TABLE user
(
  id int2 not null
);

Liefert einen Fehler.

Hier ist eine Referenz für andere Systeminformationsfunktionen:

http://www.postgresql.org/docs/9.0/static /functions-info.html