2016-07-20 14 views
0

Oracle 11Gkann keine Zeile ORA-01950 einfügen: keine Privilegien auf Tabellen

I

ALTER USER CWS_APP quota unlimited on CWS_APP; 
grant RESOURCE,CONNECT,UNLIMITED TABLESPACE to CWS_APP; 

alle Privilegien Benutzer gewährt aber noch nicht in der Lage, eine Zeile in Tabelle einzufügen:

insert into CWS_RULES.pr4_base(pzinskey, pxcommitdatetime) values('abc',sysdate) 
Error report - 
SQL Error: ORA-01950: no privileges on tablespace 'CWS_RULES' 
01950. 00000 - "no privileges on tablespace '%s'" 
*Cause: User does not have privileges to allocate an extent in the 
      specified tablespace. 
*Action: Grant the user the appropriate system privileges or grant the user 
      space resource on the tablespace. 

Antwort

0

Der Eigentümer eines Objekts besitzt die Daten und muss über entsprechende Kontingente in den entsprechenden Tabellenbereichen verfügen. Der Benutzer, der die Einfügung verursacht hat, ist nicht relevant. Das ist eine gute Sache - es wäre ein königlicher Schmerz, wenn Oracle verfolgen müsste, welche Zeilen in einer bestimmten Tabelle von einem bestimmten Benutzer eingefügt wurden, um nur diese Zeilen gegen seine Quote zu zählen.

Die Tabelle gehört cws_rules. Daher muss der Benutzer cws_rules genügend Kontingent im cws_rules Tablespace haben, um die Daten unterzubringen. Es spielt keine Rolle, welches Kontingent cws_app hat, weil es die Daten nicht besitzt.

Verwandte Themen