Oracle基本操作
基本操作一: 创建表空间和新用户,并完成授权
1.背景知识:
数据库实例,用户,表空间,数据文件之间的关系?
数据库实例:用户1、用户2、用户3……
表空间1、表空间2、表空间3……
表空间: 数据文件1、数据文件2、数据文件3……
注:表空间和用户之间没有隶属关系。一个用户可使用多个表空间,一个表空间也可供多个用户
使用。
2.基本操作
A.创建表空间
a)创建一个临时表空间
b)创建第一个数据表空间
c)创建第二个数据表空间
注: Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需
要对查询的中间结果进行排序。重启数据库可以释放临时表空间,如果不能重启实例,而一直
保持问题sql语句的执行,temp表空间会一直增长.
B.创建新用户并授权
a)创建用户并指定默认表空间
b)对新创建的用户进行授权
1)方式一:角色授权
注:此时Edison将拥有connect,resource这两个角色的权限
2)方式二:直接授权
注:可以通过role_sys_privs表查询角色权限,例如,查询connect角色的权限,如下:
附:完整对创建,修改,删除表空间和用户的说明:
http://wenku.baidu.com/view/cf219708581b6bd97f19eac8.html
基本操作二: 创建新表并向其总添加数据
1.背景知识:
每个用户都有自己默认的表空间,创建新表时,用户如果不指定存到哪个表空间时,系统
将会把表存到该用户默认的表空间中.
2.基本操作
A.创建新表
a)存入默认的表空间
b)存入指定的表空间
xxxxxxxx
B.向表中添加数据
a)添加单条数据
b)添加多条数据
1)从其他表中导入
2)新数据录入
在Excel中写好,第一列要为空,然后直接复制粘贴到PLSQL中。
粘贴之后,先F8再F10
注:Excel中可设置列数据的类型
基本概念:
1.DDL、DML是什么?
DDL:数据定义语言,具体为:数据库创建,数据库删除,表创建,表删除等
DML:数据操纵语言,具体为:insert、delete、update、select
2.命令窗口和SQL窗口的区别?
命令窗口:类似于sqlplus,基本上命令都可以执行
SQL窗口:执行命令有很大限制,仅可执行DDL、DML等
3.查看表空间和物理数据文件之间的关系?
select * from sys.dba_data_files;
常见问题:
a)用EXP导出某个用户时,会将所有数据都导出吗?
会。
b)如何将表移到另一个表空间?-----待定
alter table b move tablespace tsb;
c)如何查看一个表属于哪个表空间?
d)如何查看一个用户拥有哪些表空间?
SELECT FROM DBA_SEGMENTS WHERE TABLESPACE_NAME=xxx
e)如何查看一个表空间属于哪些用户?
SELECT FROM DBA_SEGMENTS WHERE TABLESPACE_NAME=xxx
f)如何更改用户默认的表空间?
g)Oracle中OracleDBConsoleORCL无法启动的解决办法?
E:\WINDOWS\system32\drivers\etc下的host文件中,添加IP地址和计算机名对应关系:
127.0.0.1 localhost
192.168.1.58 fuyoo-399c533f7
注:1)由于以上对应关系,故经常改IP会导致OracleDBConsoleORCL无法启动
2)OracleDBConsoleorcl服务是采用浏览器访问oracle的企业管理器,可以以网页形式进行DB管理
1.背景知识:
数据库实例,用户,表空间,数据文件之间的关系?
数据库实例:用户1、用户2、用户3……
表空间1、表空间2、表空间3……
表空间: 数据文件1、数据文件2、数据文件3……
注:表空间和用户之间没有隶属关系。一个用户可使用多个表空间,一个表空间也可供多个用户
使用。
2.基本操作
A.创建表空间
a)创建一个临时表空间
1 create temporary tablespace EdisonTableSpc_Temp
2 tempfile 'F:\oracle\product\10.1.0\oradata\orcl\EdisonTableSpc_Temp.dbf'
3 size 200m
4 autoextend on next 20m
5 maxsize 2048m;
b)创建第一个数据表空间
1 create tablespace EdisonTableSpc_Data_A
2 datafile 'F:\oracle\product\10.1.0\oradata\orcl\EdisonTableSpc_Data_A.dbf'
3 size 200m
4 autoextend on next 20m
5 maxsize 2048m;
c)创建第二个数据表空间
1 create tablespace EdisonTableSpc_Data_B
2 datafile 'F:\oracle\product\10.1.0\oradata\orcl\EdisonTableSpc_Data_B.dbf'
3 size 200m
4 autoextend on next 20m
5 maxsize 2048m;
注: Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间消耗的主要原因是需
要对查询的中间结果进行排序。重启数据库可以释放临时表空间,如果不能重启实例,而一直
保持问题sql语句的执行,temp表空间会一直增长.
B.创建新用户并授权
a)创建用户并指定默认表空间
1 create user edison
2 identified by edison
3 default tablespace EdisonTableSpc_Data_A
4 temporary tablespace EdisonTableSpc_Temp;
b)对新创建的用户进行授权
1)方式一:角色授权
1 grant connect,resource to edison;
注:此时Edison将拥有connect,resource这两个角色的权限
2)方式二:直接授权
1 GRANT SELECT,INSERT,UPDATE,DELETE,ON USERS TO Edison;
注:可以通过role_sys_privs表查询角色权限,例如,查询connect角色的权限,如下:
1 select * from role_sys_privs where role='CONNECT';
附:完整对创建,修改,删除表空间和用户的说明:
http://wenku.baidu.com/view/cf219708581b6bd97f19eac8.html
基本操作二: 创建新表并向其总添加数据
1.背景知识:
每个用户都有自己默认的表空间,创建新表时,用户如果不指定存到哪个表空间时,系统
将会把表存到该用户默认的表空间中.
2.基本操作
A.创建新表
a)存入默认的表空间
1 Create Table TestTable
2 (
3 StaffId varchar(20) not null,
4 StaffName varchar(20) default '',
5 primary key(StaffId)
6 )
b)存入指定的表空间
xxxxxxxx
B.向表中添加数据
a)添加单条数据
1 insert into TestTable( staffID,staffName)
2 values
3 ('0001','TonyPark')
b)添加多条数据
1)从其他表中导入
1 insert into TestTable(staffID,staffName)
2 select staffID,staffName
3 from TestTable_2
4 where ...(条件.)
2)新数据录入
在Excel中写好,第一列要为空,然后直接复制粘贴到PLSQL中。
粘贴之后,先F8再F10
注:Excel中可设置列数据的类型
基本概念:
1.DDL、DML是什么?
DDL:数据定义语言,具体为:数据库创建,数据库删除,表创建,表删除等
DML:数据操纵语言,具体为:insert、delete、update、select
2.命令窗口和SQL窗口的区别?
命令窗口:类似于sqlplus,基本上命令都可以执行
SQL窗口:执行命令有很大限制,仅可执行DDL、DML等
3.查看表空间和物理数据文件之间的关系?
select * from sys.dba_data_files;
常见问题:
a)用EXP导出某个用户时,会将所有数据都导出吗?
会。
b)如何将表移到另一个表空间?-----待定
alter table b move tablespace tsb;
c)如何查看一个表属于哪个表空间?
d)如何查看一个用户拥有哪些表空间?
SELECT FROM DBA_SEGMENTS WHERE TABLESPACE_NAME=xxx
e)如何查看一个表空间属于哪些用户?
SELECT FROM DBA_SEGMENTS WHERE TABLESPACE_NAME=xxx
f)如何更改用户默认的表空间?
g)Oracle中OracleDBConsoleORCL无法启动的解决办法?
E:\WINDOWS\system32\drivers\etc下的host文件中,添加IP地址和计算机名对应关系:
127.0.0.1 localhost
192.168.1.58 fuyoo-399c533f7
注:1)由于以上对应关系,故经常改IP会导致OracleDBConsoleORCL无法启动
2)OracleDBConsoleorcl服务是采用浏览器访问oracle的企业管理器,可以以网页形式进行DB管理