谁来帮我解决这个问题?

Rayphrank 2004-06-10 04:09:55
在Oracle9i中,怎样将一个脚本文件(.sql,例如是创建表的脚本)执行到某个方案中,我发现如果在SQL Plus Sheet 中运行脚本文件,总是将表建立到SYS方案中,如果想建立到别的方案中该怎么做了?(我的脚本中建立表的语句没有方案的,比如create table aa.....,而不是create table “sys”.“aa”....)
...全文
107 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
aweihz 2004-06-11
  • 打赏
  • 举报
回复
你不要给它SYSDBA权限!给个DBA的权限。
Rayphrank 2004-06-11
  • 打赏
  • 举报
回复
我在把问题详细说一下,
现在我有一个.sql脚本文件,里面是一些建库的脚本,如
create table aaa
…………

也就是说这个脚本是没有和任何方案关联的,

在SQLPLUS SHEET中,我运行这个脚本,发现运行结果是在方案SYS中把这些表建立起来了,
现在我想将这些表建立在一个我自己的方案,比如U_RAY中,于是我新建了一个永久表空间T_RAY,新建了一个用户U_RAY,设置用户U_RAY的表空间为T_RAY,给用户U_RAY增加了角色sysdba和权限CREATE ANY TABLE,
然后在SQL PLUS SHEET中使用用户U_RAY登陆,运行脚本,这时候我发现表还是建立在方案SYS中,那我该怎样设置才能让脚本可以在方案U_RAY中建表了?
comcn 2004-06-10
  • 打赏
  • 举报
回复
create user scott identified by a default tablespace scott temporary tablespace scott
这样不就行了 ^_^
Rayphrank 2004-06-10
  • 打赏
  • 举报
回复
“事前要检查user是否default到sys上“
怎样检查了?能不能说详细一点,谢谢
tmxli 2004-06-10
  • 打赏
  • 举报
回复
connect user/password@oradb 这样就可以联到指定的方案中了,再执行sql. 事前要检查user是否default到sys上.
Rayphrank 2004-06-10
  • 打赏
  • 举报
回复
to comcn(大XX)
我是用脚本建表,每个表都要改怎么行?
Rayphrank 2004-06-10
  • 打赏
  • 举报
回复
还是不行啊,我已经用我的方案的用户登陆了,可是还是建在SYS中,就好象SYS是缺省的方案一样,
我在新建了一个用户后,是不是还要赋予他什么权限(我加了DBA角色,一个CREATE TABLE权限 好象没有用)才能在他自己的方案中用脚本建表?
comcn 2004-06-10
  • 打赏
  • 举报
回复
create table 用户名.表名 “sys”.“aa”.... tablespace 指定一个表空间

create table scott.table1 (aa char(2),bb,char(10)) tablespace scott;
aweihz 2004-06-10
  • 打赏
  • 举报
回复
你用你要的方案的用户登陆再执行不就行了

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧