Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie erstelle ich Tabellen, die nicht im Besitz von sys in Oracle sind?

Angesichts des Fehlers gehe ich davon aus, dass Sie sich als SYS bei der Datenbank anmelden um Ihre Tabellen zu erstellen und Ihren Code zu schreiben. Sie möchten SYS nicht verwenden Schema dafür -- Sie sollten niemals Objekte im SYS erstellen Schema. Sie müssen sich als anderer Benutzer bei der Datenbank anmelden. Wenn Sie eine ganz neue Anwendung erstellen, würden Sie im Allgemeinen einen neuen Benutzer erstellen, der alle Objekte für die neue Anwendung besitzt.

Wenn Sie beispielsweise einen Facebook-Klon erstellen und den USERS verwenden möchten Tablespace für Ihre Daten

CREATE USER facebook_appid
  IDENTIFIED BY <<password>>
  DEFAULT TABLESPACE USERS
  TEMPORARY TABLESPACE TEMP;

GRANT CREATE SESSION,
      CREATE TABLE,
      CREATE TRIGGER
   TO facebook_appid;

Sie würden sich dann als facebook_appid mit der Datenbank verbinden mit dem von Ihnen angegebenen Passwort.

sqlplus facebook_appid/<<password>>@<<TNS alias>>

Sobald Sie das getan haben, können Sie die Tabelle und den Trigger erstellen.