一、sqlplus操作

1.登录:

  • cmd => sqlplus scott/tiger =>conn sys/as sysdba

2.设置:

  • set sqlprompt ShenSijie>
  • set linesize 120
  • set pagesize 20
  • set serveroutput on

3.截图:

  • win+shift+S

二、关于oracle(第二章):看实验报告

1.表空间信息:

  • 使用V$TABLESPACE视图查看表空间信息:select * from V $TABLESPACE;
  • 查看表空间dba_tablespaces属性:desc dba_tablespaces;
  • 查看表空间中所报刊的段信息:select segment_name,segment_type,extents,tablespace_name from dba_segments where tablespace_name=‘SYSTEM’;
  • 查看回滚段的名称列表:select * from V$rollname;
  • 查看回滚段的统计信息:select* from V$rollstat;
  • 查看表空间中空闲区间的信息:desc dba_free_space;

2.查看物理体系结构各部分内容:

  • 查看SGA(系统全局区)参数:show parameter sga
  • 查看PGA(程序全局区)参数:show parameter pga
  • 查看共享池大小:show parameter shared_pool_size
  • 查看数据缓冲池大小:show parameter db_cache_size
  • 查看日志缓冲区大小:show parameter log_buffer
  • 查看数据块大小:select name,value from V$parameter where name = ‘db_block_size’;(单位Byte)

3.表空间

创建表空间SSJ,同时创建一个50MB的数据文件:create tablespace SSJ datafile ‘SSJ.DBF’ size 50m;

三、关于用户管理与权限分配:(13章)

用户:

  • 创建用户:create user “user_name” identified by “user_password”;
  • 解锁用户:alter user “user_name” account unlock;
  • 修改用户密码:alter user “user_name” indentified by “new_user_password”
  • 查看用户的默认表空间和零时表空间:select default_tablespace,temporary_tablespace from dba_users where username=“user_name”;
  • 删除用户:drop user “user_name”;

角色

  • 创建角色:create role “role_name”;
  • 查看角色所拥有的权限:select * from dba_sys_peivs where grantee=‘role_name’;
  • 修改角色:
    • 授予权限:grant 权限 to “role_name”;
    • 收回权限:revoke 权限 from “role_name”;
  • 删除角色:drop role “role_name”;

课本P263:一些重要的角色

权限:

授予权限:grant 权限 to “role_name/user_name”;
授予用户某角色的权限:grant role_name to user_name

例题:
创建一个ssj用户,口令为123,并设置默认表空间为users,临时表空间为tempt ,并指定在默认表空间上的大小为20MB。
create user ssj identified bu 123
default tablespace users
temporary tablespace temp
quota 20m on users;

创建角色 ssj_role,并授予权限,并将ssj_role的权限 以及 create table的权限 授予ssj用户。
create role ssj_role [identified by 1234]; (可以没有密码)
grant select,update,insert,delete on emp to ssj_role;
grant ssj_role to ssj;
grant create table to ssj;

授予用户dba权限,收回dba权限,修改ssj用户的表空间大小为10m,修改密码为1234,解锁ssj用户,删除ssj用户
grant dba to ssj;
revoke dba to ssj;
alter user ssj quota 10m on users;
alter user ssj identified by 1234;
alter user ssj account unlock;
drop user ssj;

四、标准sql

1.DQL(数据查询语言)

例子一:查询员工的姓名,员工编号,工资的1.1倍,以及部门名称,要求:工资在1000跟5000之间,并且不等于1500和2000. 姓名第二个字符为A. 工作为SALESMAN和MANAGER之间一个.没有绩效.结果按照工资降序输出。
select distinct e.ename “姓名”,e.empno “员工编号”,e.sal*(1+0.1) “工资” ,d.dname “部门名称”
//数据不重复,为每一列指定列名,带有表达式的select(显示1.1倍的工资)。
from emp e,dept d
//多个表时,给予别名,写起来方便
where e.deptno=d.deptno
and e.sal> 1000 and e.sal<5000
//也可以使用 e.sal between 1000 and 5000
and e.sal<>all(1500,2000)
//<>表示“不等于”;也可表示为A!B。all表示同时满足
and e.ename like ‘_A%’
//使用like关键字查询,_A%可以表示BAccc、DAnn等
and e.job in(’SALESMAN‘,’MANAGER‘)
//in关键字,job在列出的几个之中,
and e.comm is null
//表示没有绩效,可改:is not null.同时not可用于,not between and等等
order by sal desc
//以sal降序顺序输出,升序为asc

例子二:列出每个部门的部门号以及工资在1000以上的人员个数,要求:以部门号升序输出,只输出人数大于公司部门数的部门。
select count(empno),deptno
//还有avg(sal)工资的平均数等聚合函数
from emp
where sal>1000
group by deptno
//以deptno分组查询
having count(empno)>(select count(distinct deptno) from emp)
//对分组查询结果做删选,不用where,用having
order by deptno asc;

2.DML(数据操纵语言)

insert into emp values (‘ssj’,…);
update emp set sal=1000 where deptno=10;
delete from emp where empno=1111;

3.TCL(事务控制语言)

commit
rollback

五、PL/sql

1.匿名块

declare
type emp_type is record//声明record类型变量,可以储存多列值的一行数据
(
var_no emp.empno%type;
//%type在不知道数据类型的时候使用,将
var_name varchar(10)
);
empinfo emp_type;//定义变量。注意声明和变量一个都不能少

rowemp emp%rowtype//就像%type,emp%rowtype表示可以储存一行emp表中数据的变量

begin
money =: 888888;//在匿名块中赋值要使用 “:=”

select empno,ename into empinfo from emp where empno=9999;//使用record

select * into rowemp from emp where empno=8888;//使用rowtype

exception
when zero_divide then dbms_output.put_line("…");

end;
/

2.流程控制语句

(1)选择

ifthen …;
elsifthen …;
else … ;**
end if;**

②case a
when … then …;
when … then …;
else …;
end case;

(2)循环

①loop …(循环体)
exit when…(结束条件)
end loop;

②while …(条件)
loop …(循环体)

③for i in reverse 1…100
loop …
end loop;

3.命名块

(1)游标

①显式游标

declare
cursor cur_emp(var_job in varchar2:=‘SALESMAN’) 创建游标
is select empno,ename,sal
from emp
where job=var_job;

type record_emp is record
(

);

begin
open cur_emp(‘MANAGER’); 打开游标
fetch cur_emp into emp_row; 先取一份数据
while cur_emp%found loop 当游标中还有数据
dbms_output.put_line(emp_row.var_ename||…);
fetch cur_emp into emp_row; 再去一份数据
end loop;
close cur_emp;关闭游标
end;
/

②隐式游标

for emp_record(这个名字只要是可以作为record数据名字的就行) in (select empno,ename,sal from emp where job=‘SALESMAN’)
loop …end loop;
end;

(2)存储过程

create or replace procedure ssj
(
in
out
)
is/as
declare
begin

(3)函数

create or replace function ssj( num_a number) return number is xxxxxx

avg_pay :=get_avg_pay(10);

(4)触发器

create or replace trigger trig (for each row//行级触发器)
before/after insert/delete/update
on table_name

6.表相关

建表


改表名

添加列
drop table table_name;删除表
delete from table_name where …

Oracle期末考试复习相关推荐

  1. Oracle期末考试 复习笔记

    Oracle期末考试 复习笔记 复习提纲 引言 本部分旨在为大家介绍数据库及大型数据库相关的概念,需要大家掌握云计算概念. 云计算的应用及分类.云数据库.关系型数据库的基本常识. Oracle 12c ...

  2. Oracle期末考试总复习资料

    文章目录 前言 一.简介 1. 登录 2. 授权 3. 修改 4. 启用与禁用 5. 删除 6. 索引.序列.角色.用户 二.表 1. 创建表 1.1 子查询创建表 1.2 定义约束^!!!^ 1.3 ...

  3. 2018人工智能期末考试复习资料(一):学术篇

    机器之心知识委员会 机心通知函[2018]002号 2018 年人工智能专业期末考试复习资料:学术篇 各人工智能研究者.工程师.从业人: 2018 年是人工智能迅猛发展的一年,从技术研究到产业应用都取 ...

  4. 我们身边的知识产权单元测试答案(期末考试复习)【湘潭大学】

    我们身边的知识产权单元测试答案(期末考试复习)[湘潭大学] 第一章 第二章 第三章 第四章 第五章 第六章 第一章 我国历史上第一部以著作权为保护中心的法律是1910年清政府制定颁布的<大清著作 ...

  5. c语言期末考试复习题,C语言期末考试复习资料 计算机等级考试复习题目

    C语言期末考试复习资料 计算机等级考试复习题目 国二国三资料题目 1 C 语言复习题 @复刻回忆 新浪微博账号:http://doc.xuehai.net/panhe14 个人主页 http://do ...

  6. 河北工程大学c语言期末考试及答案,河北工程大学之数据结构c语言版期末考试复习试题...

    河北工程大学之数据结构c语言版期末考试复习试题 <数据结构与算法>复习题 一.选择题. 1.在数据结构中,从逻辑上可以把数据结构分为 C . A.动态结构和静态结构 B.紧凑结构和非紧凑结 ...

  7. 大学操作系统期末考试复习经典计算题快速回顾

    操作系统期末考试复习经典计算题 1.银行家算法 2.计算周转时间 2.1 先来先服务(FCFS) 2.2 短作业优先调度算法(SJF) 2.3 优先级调度算法和高响应比优先调度算法 3.页面置换算法( ...

  8. 人工智能期末考试复习(贲可荣 张彦铎)

    人工智能期末考试复习(贲可荣 张彦铎) 人工智能的3个主流学派: 逻辑学派(符号主义方法):物理符号系统(即符号操作系统)假设和有限合理性原理 仿生学派(联结主义方法):神经网络及神经网络间的连接机制 ...

  9. 计算机文化基础期末考试复习

      计算机文化基础期末考试复习以下是咱们期末考试的复习题,希望大家认真学习: 一.选择题 1. 第一台计算机ENIAC淡生于1946年,是电子管计算机:第二代是晶体管计算机:第三代是中小规模集成电路: ...

最新文章

  1. 习题8-6 删除字符 (20 分)
  2. 这些哭笑不得的情景,每个程序员都可能面对
  3. 利用vue进行页面滚动监听,上拉刷新
  4. javascript入门 - 1
  5. Docker端口映射实现
  6. Android开发之基本概念
  7. 如何避免重复请求/并发请求?这样处理才足够优雅
  8. 管道过滤模式 大数据_大数据管道配方
  9. Java 故障安全异常处理
  10. 【手势识别】基于matlab GUI石头剪刀布【含Matlab源码 774期】
  11. QQ默认表情消失的解决办法
  12. 【毕业设计】基于单片机的太空游戏机 - 嵌入式 物联网 stm32 51
  13. mysql给一张表做快照_MySQL之快照读
  14. 架构师之spring------@Autowire注入多泛型实例 can not cast to的问题解决
  15. 非985/211面试大厂校招经历经验总结(安全工程师/渗透工程师)
  16. 2021云栖大会丨果断收藏!「混合云参会指南」来啦
  17. 在React中使用防抖节流
  18. 三菱a系列motion软体_吉林三菱Q10UDHCPU
  19. 你遇到过的最奇葩的博士生导师是怎样的?
  20. Python作业【六】(语言练习题,稍有难度)

热门文章

  1. 清除Electron缓存
  2. python多少维度_python – 选择一个ndarray的所有维度
  3. 分享几个有趣的Linux命令
  4. excel流程图连接线锁定_流程图_excel版
  5. Mogrt片头模板 炫酷爆炸性动态标题PR模板下载
  6. 李涛PS高手之路基础篇(1)
  7. 【JAVA】为什么抽象类不能被实例化
  8. 数据仓库之源数据类型
  9. 电源层和地线层完整性规则_PCB板布线的规则和技巧
  10. mysql设置edit_设置sqlplus中的Edit编辑模式