--请将部门人数大于5人的部门名称和人数插入一张新表
--将A 表数据插入B表而B表不存在 ,sql server 写法
--select * into B from A
--将A 表数据插入B表而B表不存在 Oracle 写法
--create table B as select * from A;
create table Total(dname,menberTotal) as select * from
(
select
d.dname ,
count(e.deptno)
from emp e
right join dept d
on e.deptno = d.deptno
group by d.deptno, d.dname
having count(e.deptno)>=5
);
select * from Total;
--查看当前用户默认的表空间
-- USERNAME DEFAULT_TABLESPACE
-- SCOTT USERS
select username,default_tablespace from user_users;
--查看当前用户有哪些表
select * from user_tables;
--查看当前用户有哪些权限
select * from user_role_privs;
--更改当前用户的默认表空间
--alter user 用户名 default tablespace 新表空间;
/*
解决ORA-01536:超出表空间“users"的空间限额的方法
案例
角色:CONNECT、RESOURCE
系统权限为空
在创建表的时候,报这个错误,然后添加系统权限UNLIMITED TABLESPACE,可以创建表,
但是能够看到所有的表空间,希望用户只操作一个表空间的表。
分析:
这是因为你的用户被数据库限制了在建表的表空间。
解决方法:
执行一下下面的语句后,再执行你的建表语句。
alter user 你的用户名 quota unlimited on 你建表的表空间的名字;//若没有就写该用户默认表空间名
如果报权限不足则在登录用户的时候连接为SYSDBA(超级管理员,DBA:database administrator)
*/
alter user Scott quota unlimited on users;
将A 表数据插入B表而B表不存在 Oracle 写法
最新推荐文章于 2023-02-06 22:10:14 发布