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/123456@XE 
 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  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2f88e2d3adabd581a4da6ec34cce86ab.html