sys用户可不可以创建一个table到其他用户的默认表空间呢?

[复制链接]
查看11 | 回复6 | 2006-6-26 09:16:31 | 显示全部楼层 |阅读模式
大概意思就是:
create tablespace target_ts .....

create user uuu identified by uuu default tablespace xxx;

create table xxx tablespace target_ts as select * from abc;

可能对一些基本概念迷糊了。。




多谢大家指教
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
可以的。
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
多谢!刚才用了一个办法测试了一下。
sys 用户sysdba权限登录,创建:
SQL> CREATE TABLE "TONY"."TB1"
2 tablespace tsfortony as select * from hr.jobs
3;
tablespace tsfortony as select * from hr.jobs

*
ERROR at line 2:
ORA-01950: no privileges on tablespace 'TSFORTONY'

sys用户默认对新建表空间没有足够的权限?
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
[php]
SYSTEM@HSMIS(ZHXX)>conn zhxx/zhxx
ZHXX@HSMIS(ZHXX)>create tablespace t datafile 'd:\1.dbf' size 10M reuse;
表空间已创建。
已用时间:00: 00: 00.06
SYS@HSMIS(ZHXX)>conn / as sysdba
已连接。
SYS@HSMIS(ZHXX)>create table t(id number) tablespace t;
表已创建。
--
[/php]
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
最初由 AmorousPoem 发布
[B]多谢!刚才用了一个办法测试了一下。
sys 用户sysdba权限登录,创建:
SQL> CREATE TABLE "TONY"."TB1"
2 tablespace tsfortony as select * from hr.jobs
3;
tablespace tsfortony as select * from hr.jobs

*
ERROR at line 2:
ORA-01950: no privileges on tablespace 'TSFORTONY'

sys用户默认对新建表空间没有足够的权限? [/B]

你创建的是tony的object,当然是用tony的权限,tony对tablespace tsfortony 没有权限。
sys对所有的表空间都有权限的。
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
多谢
我创建用户tony的时候,其默认表空间就是tsfortony。
出现这样的情况,正常吗?
回复

使用道具 举报

千问 | 2006-6-26 09:16:31 | 显示全部楼层
多谢大家了!明白了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行