oracle建表?

pl_mm5 2011-12-07 05:32:49
SQL> create tablespace longs datafile 'D:\long.dbf' size 100M autoextend on;
SQL> create user hll identified by hll default tablespace longs;
SQL> grant dba to hll;
SQL> create table stu(
2 id int primary key not null,
3 name char(20) not null,
4 age int);
SQL> commit;
提交完成。


我在sqlplus下建立了上面的表
用户hll授予dba权限
这时候我在 plsql下 用system/oracle orcl normal 登陆可以看到表stu
hll/hll orcl normal 登陆后, tables下是空的??是不是还要在配置向导下建立个数据库 ??
这个orcl是数据库名字,监听名字也可以是orcl?

plsql 用hll怎么连??表空间和数据库,表之间的关系还是很乱啊
用惯了sql server,mysql转不过了弯了


大侠给理顺理顺吧。。。







...全文
88 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
pl_mm5 2011-12-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 luiseradl 的回复:]
-- 用system用户登录
sqlplus system/oracle@orcl
-- 创建表空间
create tablespace longs datafile 'D:\long.dbf' size 100M autoextend on;
create user hll identified by hll default tablespace longs;
grant dba to……
[/Quote]谢谢 说的很清楚
zhoujiazhen885 2011-12-08
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 zhoujiazhen885 的回复:]

恩,你用system建表的时候没有指定表是给什么用户的,当然就默认给system用户了。用hil用户登录再建表就OK
[/Quote]

感觉楼主你的问题是为什么授予了DBA权限却TABELS下面没有表,赋予了DBA权限可以查看所有表,但是那个表属主不是hil。你可以用select 查询到那张表的
zhoujiazhen885 2011-12-08
  • 打赏
  • 举报
回复
恩,你用system建表的时候没有指定表是给什么用户的,当然就默认给system用户了。用hil用户登录再建表就OK
han6320056 2011-12-08
  • 打赏
  • 举报
回复
你登陆的用户不对吧,要用hil用户登陆,因为你的表空间默认被hil操作
LovevAnn 2011-12-08
  • 打赏
  • 举报
回复
用SYSTEM用户登录后,创建表空间,创建用户,为用户创建权限
用创建的用户登录后,创建表就可以了!
我心飞翔 2011-12-08
  • 打赏
  • 举报
回复
-- 用system用户登录
sqlplus system/oracle@orcl
-- 创建表空间
create tablespace longs datafile 'D:\long.dbf' size 100M autoextend on;
create user hll identified by hll default tablespace longs;
grant dba to hll;

-- 用hll用户登录
sqlplus hll/hll@orcl
创建表。

请按上面的步骤操作。

注意Oracle的一些基本概念。
表空间:是一个逻辑的概念,是属于所有用户共享的。
表:是属于创建他的用户的。
pl_mm5 2011-12-08
  • 打赏
  • 举报
回复

SqlPlus下
-- 用system用户登录
sqlplus system/oracle@orcl
-- 创建表空间
create tablespace longs datafile 'D:\long.dbf' size 100M autoextend on;
--创建用户
create user hll identified by hll default tablespace longs;
--授权
grant dba to hll;

-- 退出用hll用户登录
sqlplus hll/hll@orcl
创建表。

请按上面的步骤操作。

注意Oracle的一些基本概念。
表空间:是一个逻辑的概念,是属于所有用户共享的。
表:是属于创建他的用户的。

PlSql下当前用户下
--查看表空间
select * from dba_tablespaces ;
--查看用户下的表:
select * from user_tables;
--查字段数:
select count(1) from user_tab_cols where table_name = 'HELP'
huangdh12 2011-12-07
  • 打赏
  • 举报
回复
表是属于用户的,所以前面要加上限定,指明是属于哪个用户的。
forgetsam 2011-12-07
  • 打赏
  • 举报
回复
你建表时候没有指定用户,那么表就是创建者的,它是system的。

hll/hll orcl normal 里的orcl不叫监听,叫网络服务名,它就代表一个连库串而已,你想起什么起什么。

你直接hll/hll orcl normal 连接进去,创建表,继续就行了。

17,377

社区成员

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

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