天天看点

oracle数据库的基本操作语句

本文主要介绍了oracle数据库基本的管理数据库的语句及其概念

1.如何查询一个角色包括的权限?
	a.一个角色包含的系统权限
	select * from dba_sys_privs where grantee='CONNECT'
	或select * from role_sys_privs where role='CONNECT'
	b.一个角色包含的对象权限
	select * from dba_tab_privs where grantee='CONNECT'
	或select * from role_tab_privs where role='CONNECT'
2.oracle究竟有多少种角色?
	select * from dba_roles
3.如何查看某个用户具有什么样的角色?
	select * from dba_role_privs where grantee='SYS'
4.如何显示当前用户可以访问的所有数据字典视图?
	select * from dict where comments like '%grant%'
5.如何显示当前数据库的全称?
	select * from global_name	
6.知道表空间名,显示该表空间包括的所有表
	select * from all_tables where tablespace_name='表空间名'	
7.知道表名,显示该表所属的表空间
	select tablespace_name,table_name from user_tables where table_name='表名'
8.查看oracle的SGA,PGA,排序区,大型池,JAVA池的大小
	show parameter sga_max_size;
	show parameter pga_aggregate_target;
	show parameter sort_area_size;
	show parameter large_pool_size;
9.oracl存储结构:     												实例结构:   
	1.物理存储结构(数据文件*.dbf,控制文件*.ctl,重做日志文件*.log)   1.内存结构
	2.逻辑存储结构	 												2.进程结构	
10.数据文件*.dbf
	保存表中的记录和索引等所有的数据,
	查看数据文件信息select file_name from dba_data_files;
11.控制文件*.ctl
	二进制文件,很小,存放数据文件和日志文件的信息
	查看控制文件信息select name from V$controlfile
12.重做日志文件*.log
	记录数据库修改信息的文件
13.表空间
	表空间是oracle中最大的逻辑存储结构,它与物理上的一个活多个数据文件相对应,每个oracle数据库
	至少拥有一个表空间,表空间的大小等于该表空间的所有数据文件大小的总和,表空间用于存储用户在
	数据库中创建的所有内容,用户在创建表时,可以指定一个表空间存储该表,若没有指定表空间,则oracle
	系统将会将用户创建的内容存储到默认的表空间中
14.系统默认创建的表空间
	1.system 用于存储系统的数据字典,系统的管理信息和用户数据表等
	2.sysaux 辅助系统表空间,用于减少系统表空间的负荷,提高系统作业效率
	3.temp 临时表空间
	4.undotbsl 撤销表空间
	5.users 用户表空间,用于存储永久性用户对象和私有信息	
	查看系统的表空间select tablespace_name from dba_tablespaces;
15.数据字典
   保存数据库对象和段的信息,如表,视图,索引,包,存储过程以及用户,权限,角色,审计和约束等相关信息	
   数据字典视图类型:
   1.user视图:记录用户对象的信息,如user_tables
   2.all视图:记录用户对象的信息以及被授权访问的对象信息,如all_synonyms
   3.dba视图:记录数据库实例的所有对象的信息,如dba_tables
   4.V$视图:记录与数据库活动相关的性能统计动态信息,如v$datafile
   5.GV$视图:记录分布式环境下所有实例的动态信息,如gv$lock视图
   基本的数据字典;
   dba_tables:所有用户的所有表的信息
   dab_tab_columns:所有用户的表的字段的信息
   dba_views:所有用户的所有视图信息
   dba_synonyms:所有用户的同义词信息
   dba_sequences:所有用户的序列信息
   dba_constraints:所有用户的表的约束信息
   dba_indexes:所有用户的表的索引简要信息
   dba_ind_columns:所有用户的索引的字段信息
16.查看默认连接的数据库
	select name from v$database;
17.连接数据库的3种方式
	1.通过sqlplus连接数据库
	2.通过cmd连接数据库,如sqlplus system/[email protected]	
	3.通过登录后切换登录用户的方式,如 connect sys/123456 as sysdba;
	如何查看当前登录的用户是谁?select user from dual;	
18.sql*plus命令
	1.help,查看命令的使用方法,如help desc
	2.host 从sql*plus环境切换到操作系统环境,以便执行操作系统的命令
	3.clear screen清屏
	4.show [all|user|sga|errors|release|parameter]查看sql*Plus的所有系统变量信息,当前是那个用户在
	在使用SQL*Plus,显示SGA的大小,显示错误信息,显示数据库版本号,系统初始化参数信息
	5.describe查看表,视图,存储过程,函数和包等对象的结构
	6.A[PPEND] text 将text附加到当前行之后
	7.CL[EAR] BUFF[ER]清除缓冲区中的所有行
	8.C[HANGE] /old/new 将当前行中的old替换为new
	9.I[NPUT text 插入指定的文本text
	10.DEL m n 删除从第m行到n行之间的命令行
	11.L[IST] n 列出第n行
	12.R[UN]或/ 显示缓冲区中的语句,并运行这些语句
	13.n 将第n行当做当前行
	14.n text 使用text文本替换第n行信息
	15.0 text在第一行之前插入text文本
	16.save SAV[E] [FILE]file_name [CRE[ATE]|REP[LACE]|APP[END]]将缓冲区的内容保存起来
		如:save E:\query.sql
	17.GET [FILE] file_name [LIST|NOLIST]获取save命令保存的命令
	18.START读取文件内容到缓冲区中并运行 如:START E:\query.sql或者用@代替START  @E:\query.sql
	19.ED[IT] [file_name]打开记事本编辑缓冲区文件
	20.SPO[OL] [file_name [CRE[ATE]|REP[LACE]|APP[END]]|OFF|OUT]将SQL*PLUS中的输出结果
	   复制到另一个指定的文件中,如SPOOL D:\query.sql append
19.临时变量	 
20.已定义变量
	DEF[INE]显示所有的已定义变量
	DEF[INE] variable=value
	ACC[EPT] variable 用户输入变量 如:ACCEPT test NUMBER FORMAT 9999 PROMPT '你好,输入一个值' HIDE
21.COLUMN 
22.PAGESIZE SET PAGESIZE 20;
23.LINESIZE SET  LINESIZE 120;
24.创建简单报表
	TTI[TLE]设置页眉
	BTI[TLE]设置页脚
25.BREAK和COMPUTE命令	
26.创建表空间
	如:create tablespace myspace datafle 'D:\app\myspace.dbf' size 
		10M autoextend on next 5M maxsize 100M;
27.表空间的状态属性
	1.在线online alter tablespace tablespace_name online;
	2.离线offline alter tablespace tablespace_name offline parameter(normal|temporary|immediate|for recover);
	3.只读read only alter tablespace tablespace_name read only
	4.读写read write alter tablespace tablespace_name read write
28.修改表空间的大小
	1.修改表空间数据文件的大小 ALTER DATABASE DATAFILE file_name(完整路径) RESIZE newsize K|M
	2.增加表空间的数据文件 ALTER TABLESPACE tablespace_name ADD DATAFILE file_name SIZE number K|M 	
	3.修改表空间中数据文件的自动扩展性 ALTER DATABASE DATAFILE file_name AUTOEXTEND ON
29.表空间数据文件的状态
	1.ONLINE	
    2.OFFLINE
	3.OFFLINE DROP	
30.移动表空间中的数据文件
	1.ALTER TABLESPACE tablespace_name OFFLINE	
	2.移动数据文件到另一个磁盘
	3.RENAME DATAFILE '数据文件路径1’ TO '数据文件路径2'
	4.ALTER TABLESPACE tablespace_name ONLINE
31.重命名表空间
	在表空间为ONLINE的情况下,ALTER TABLESPACE tablespace_name RENAME TO new_tablespace_name	
32.删除表空间
	DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES
33.创建临时表空间
	CREATE TEMPORARY TABLESPACE mytemp TEMPFILE 'D:\mytemp.dbf' SIZE 5M AUTOEXTEND ON NEXT 5M MAXSIZE 20M	
34.修改临时表空间
35.临时表空间组
	查看临时表空间组信息
36.大文件表空间
	CREATE BIGFILE TABLESPACE tablespace_name DATAFILE '路径' SIZE 10M 	
           

继续阅读