Oracle
 sql >> Database >  >> RDS >> Oracle

Come posso creare tabelle non di proprietà di sys in Oracle?

Dato l'errore, presumo che tu stia accedendo al database come SYS per creare le tue tabelle e per scrivere il tuo codice. Non vuoi usare il SYS schema per questo:non dovresti mai creare oggetti nel SYS schema. Dovrai accedere al database come un altro utente. In generale, se stai creando un'applicazione nuova di zecca, creerai un nuovo utente che possieda tutti gli oggetti per la nuova applicazione.

Ad esempio, se stai creando un clone di Facebook e desideri utilizzare USERS tablespace per i tuoi dati

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

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

Ti connetteresti quindi al database come facebook_appid utilizzando la password specificata.

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

Dopo averlo fatto, puoi creare la tabella e il trigger.