Rav*_*avi 7 oracle schema authorization database-schema
我想在oracle中创建一个新模式,我使用了示例代码,可在此处获得
CREATE SCHEMA AUTHORIZATION oe
CREATE TABLE new_product
(color VARCHAR2(10) PRIMARY KEY, quantity NUMBER)
CREATE VIEW new_product_view
AS SELECT color, quantity FROM new_product WHERE color = 'RED'
GRANT select ON new_product_view TO scott
/
Run Code Online (Sandbox Code Playgroud)
但是,得到错误
ERROR at line 1:
ORA-02421: missing or invalid schema authorization identifier
Run Code Online (Sandbox Code Playgroud)
另外,请帮我如何列出所有可用架构的名称.我在用
select username from dba_users;
Run Code Online (Sandbox Code Playgroud)
列出模式,但我认为,它不是一个正确的方法,因为,用户和模式具有多对多的关系,这意味着我无法在此获取所有模式名称.
请帮我 !!
A.B*_*ade 13
从oracle 文档:
该语句实际上并不创建模式.创建用户时,Oracle数据库会自动创建架构
因此,您首先需要使用模式名称创建用户
至于你的查询,没关系,因为用户名列表等于模式名称不可用
更新:我现在无法真正测试它,但应该是这样的:
CREATE USER oe IDENTIFIED BY oePSWRD;
CREATE SCHEMA AUTHORIZATION oe
CREATE TABLE new_product
(color VARCHAR2(10) PRIMARY KEY, quantity NUMBER)
CREATE VIEW new_product_view
AS SELECT color, quantity FROM new_product WHERE color = 'RED'
GRANT select ON new_product_view TO scott;
Run Code Online (Sandbox Code Playgroud)