2015-10-07 45 views
0

我想在使用Oracle的SQLFiddle中創建一個表,我想指定該表所屬的架構。SQLFiddle - Oracle 11g - 無法創建架構

但是,我正在艱難地製作架構。由於給定的代碼如下:

CREATE USER myname 
    IDENTIFIED BY pwd4myname 
    DEFAULT TABLESPACE tbs_perm_01 
    TEMPORARY TABLESPACE tbs_temp_01 
    QUOTA 20M on tbs_perm_01; 

GRANT create session TO myname; 
GRANT create table TO myname; 
GRANT create view TO myname; 
GRANT create any trigger TO myname; 
GRANT create any procedure TO myname; 
GRANT create sequence TO myname; 
GRANT create synonym TO myname; 


CREATE TABLE myname_schema.person (
     person_id  NUMBER(5) PRIMARY KEY, 
     name  VARCHAR2(15) NOT NULL, 
     phone  NUMBER(9), 
     address  VARCHAR2(10), 
     ); 

運行此我得到:

ORA-01031:權限不夠

+0

這不是SQLFiddle的用途。沙箱不是那麼大。 – sstan

回答

0

這是沙箱環境的權限受到限制。您無法創建自己的用戶。

enter image description here

Demo

SELECT * FROM USER_SYS_PRIVS; 
0

登錄作爲SYSDBA,併發出命令,

GRANT CONNECT,RESOURCE TO YOUR_USER_NAME;

從SYSDBA註銷,再次用您的用戶名登錄,現在嘗試創建表。

+0

你確實看到這是一個SQLFiddle特定的問題,對吧?另外,你永遠不應該建議以'SYSDBA'登錄來執行這些類型的任務。 – sstan

+0

那麼,他正在使用SQL小提琴進行演示,最終他將在他的服務器上使用它。是的,我同意不推薦使用SYSDBA,但我們可以使用SYSOPER。如果我以前對我的回答感到失望,我很抱歉。謝謝你糾正我。 – Shr4N