ORACLE REFERENCES FRO TEST
【JSU】LJDragon's Oracle course notes In the first semester, junior year
Oracle考前复习
试题结构分析:
1.选择题2x10,共20分(Oracle基本概念,基本SQL语句)
2.判断题2x5,共10分(Oracle基本概念,基本SQL语句)
3.填空题2x10,共20分(Oracle基本概念,基本SQL语句)
4.简答题4x5,共20分(事务的四大特性;游标的四大特性)
5.代码编程30分(PL/SQL编程:游标)
1.选择题2x10,共20分(Oracle基本概念,基本SQL语句)
参考1-4章:http://www.cnblogs.com/anstoner/p/6227837.html
2.判断题2x5,共10分(Oracle基本概念,基本SQL语句)
参考1-4章:http://www.cnblogs.com/anstoner/p/6227837.html
3.填空题2x10,共20分(Oracle基本概念,基本SQL语句)
事务四大特性(简称ACID) (这个地方扣了我6分,考前忘记看了)
1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行
2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序串行执行的结果相一致。
3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。
4、持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。
参考1-4章:http://www.cnblogs.com/anstoner/p/6227837.html
4.简答题4x5,共20分(事务的四大特性;游标的四大特性)
1.说下char(),varchar2(),nchar(),nvarchar2()的区别:
2.说下rowid,rownum,row_number()的区别:
|
位长的字符 |
5.主要用于分页(好像上课说过) |
5.待补充..... |
3.说下union, union all的区别
|
不会排序 |
|
|
3.合并速度会比较慢 |
3.合并速度比较快 |
4.说下 delete ,truncate 区别
|
Delete |
truncate |
|
1.可以带条件删除 |
1.不可以带条件删除,是清空整个表的记录 |
|
2.记录日志 |
2.不记录日志 |
|
3.不删除表空间 |
3.删除表空间 |
|
4.可以回滚数据 |
4.不可以回滚数据 |
|
5.是DML语句 |
5.是DDL语句 |
|
6.删除速度比较慢 |
6.删除速度比较 |
5.说下 主键,唯一索引的区别
|
主键 |
唯一索引 |
|
1.一个表只有一个主键 |
1.一个表可以有多个唯一索引 |
|
2.主键字段要非空 |
2.唯一索引可以为空值 |
|
3.主键可以作为其他表的外键 |
3.待补充.... |
exsits和in 的区别
1.exist,not exist一般都是与子查询一起使用. In可以与子查询一起使用,也可以直接in (a,b.....)。
2.exist会针对子查询的表使用索引. not exist会对主子查询都会使用索引. in与子查询一起使用的时候,只能针对主查询使用索引. not in则不会使用任何索引. 注意,一直以来认为exists比in效率高的说法是不准确的。
3.in 是把外表和内表作hash 连接,而exists是对外表作loop循环,每次loop循环再对内表进行查询
显示游标的四个基本步骤
1.定义游标 cursor 游标变量名 is 查询语句;
2.打开游标 open 游标变量名;(可以重复打开)
3.提取游标 fetch 游标变量名 into 变量名;
4.关闭游标 close 游标变量名;
游标的四个属性
1.游标变量名%FOUND 布尔型属性,当最近一次读记录时成功返回,则值为TRUE;
2.游标变量名%NOTFOUND 和%found相反
3.游标变量名%ISOPEN 布尔型属性,当游标已打开时返回 TRUE;
4.游标变量名%ROWCOUNT 数字型属性,返回已从游标中读取的记录数
ddl,dml,dcl,tcl分别是什么语言,并举例说明
(1)数据查询语言(DQL:)eg: select
(2)数据操纵语言(DML:Data Manipularion Language)eg:modify,delete
(3)事务控制语言(TCL) eg:commit,rollback
(4)数据定义语言(DDL:Data Definition Language) eg:create,truncate
(5)数据控制语言(DCL:Data Control Language)eg: GRANT、DENY、REVOKE
在默认状态下,只有sysadmin、dbcreator、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言
5.代码编程30分(PL/SQL编程:游标)
树状结构查询的语法
--树状结构的表设计
--两个关键字段:id ,parenid
--parenid引用自己表的主键
--树查询,递归查询,分级查询
--分两个方向
--起始节点
--向上
--向下
--查询7566下所有的员工
- start with empno = 7566--起始位置
--查询7566上面所有的领导
- start with empno = 7566--起始位置
--伪列:level显示层级序号n
- start with t.empno = 7566--起始位置
--过滤单个节点 条件是写在where 后面
- start with t.empno = 7566--起始位置
--过滤整个分支 写在connect by prior语句的最后面
PL/SQL之游标
--查询输出10号部门的所有员工(编号,姓名,工资)
- v_empno emp.empno%type;
- v_ename emp.ename%type;
- v_sal emp.sal%type;
- open emp_cursor;
- dbms_output.put_line(emp_cursor%ROWCOUNT);
- dbms_output.put_line(emp_cursor%ROWCOUNT);
- dbms_output.put_line('true');
- dbms_output.put_line('false');
- dbms_output.put_line(v_empno||','||v_ename||','||v_sal);
- close emp_cursor;
- end;
--loop循环
- v_empno emp.empno%type;
- v_ename emp.ename%type;
- v_sal emp.sal%type;
- open emp_cursor;
- loop
- dbms_output.put_line(v_empno||','||v_ename||','||v_sal);
- end loop;
- close emp_cursor;
- end;
--while loop
- declare
- cursor emp_cursor is
- select empno,ename,sal from emp where deptno = 10;
- v_empno emp.empno%type;
- v_ename emp.ename%type;
- v_sal emp.sal%type;
- begin
- open emp_cursor;
- fetch emp_cursor into v_empno,v_ename,v_sal;
- while emp_cursor%found loop
- dbms_output.put_line(v_empno||','||v_ename||','||v_sal);
- fetch emp_cursor into v_empno,v_ename,v_sal;
- end loop;
- close emp_cursor;
- end;
--参照类型
- e emp%rowtype;
- open emp_cursor;
- loop
- dbms_output.put_line(e.empno||','||e.ename||','||e.sal);
- end loop;
- close emp_cursor;
- end;
--游标for循环
--带参数的for循环游标
--最精简版
ORACLE REFERENCES FRO TEST的更多相关文章
- ORACLE_CLASS_ENDING
[JSU]LJDragon's Oracle course notes In the first semester, junior year Oracle考前复习 试题结构分析: 1.选择题2x10, ...
- How to Write Doc Comments for the Javadoc Tool
http://www.oracle.com/technetwork/java/javase/documentation/index-137868.html This document describe ...
- 【转】DBA需要的技能
dba掌握的技术 1. os : linux,solaris或其他unix起码要一种 2. bash (不精通也要熟) LINUX与UNIX SHELL编程 ...
- Oracle Created Database Users: Password, Usage and Files References (文档 ID 160861.1)
This document is no longer actively maintained, for info on specific (new) users in recent product e ...
- Oracle数据库-primary key/foreign key和references关系
主要介绍一下个人对主键(primary key).外键(foreign key).候选键(Candidate key).超键(super key).references的总结 概念: 主键:用户选择元 ...
- Oracle Database 11g express edition
commands : show sys connect sys as sysdba or connect system as sysdba logout or disc clear screen or ...
- [转]Oracle快速入门
原文出处:http://blog.csdn.net/yueguanghaidao/article/details/7019377 select * from scott.salgrade; /*解锁s ...
- Oracle使用触发器和mysql中使用触发器的比较——学习笔记
一.触发器 1.触发器在数据库里以独立的对象存储, 2.触发器不需要调用,它由一个事件来触发运行 3.触发器不能接收参数 --触发器的应用 举个例子:校内网.开心网.facebook,当你发一个日志, ...
- ORACLE中STATUS为INACTIVE但是SERVER为SHARED状态的会话浅析
我们知道当ORACLE数据库启用共享服务器模式时,通过共享服务器模式连接到数据库的会话是有一些特征的.在v$session里面,其SERVER的状态一般为SHARED和NONE, 为SHARED时,表 ...
随机推荐
- Gradle 用法总结
用过android studio的对gradle应该都不陌生了,gradle文件的基本配置大同小异,略做了解使用应该是没什么问题了.但是深入细致的了解一下对于理解项目还是很有帮助的,尤其是遇到一些配置 ...
- Interpolator 插值器
简介 Interpolator:撺改者,校对机,分类机,插补器 Interpolator 定义了动画的变化速度,可以实现匀速.正加速.负加速.无规则变加速等,这使得基本的动画得以实现加速.减速等效果. ...
- iis7 发布mvc 遇到的HTTP错误 403.14-Forbidden Web 服务器被配置为不列出此目录的内容
iis 7上发布mvc报错:403.14-Forbidden Web 服务器被配置为不列出此目录的内容 提示里面的解决方法是: 如果不希望启用目录浏览,请确保配置了默认文档并且该文件存在. 使用 II ...
- (转)Web Service入门简介(一个简单的WebService示例)
Web Service入门简介 一.Web Service简介 1.1.Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从I ...
- Windows下配置环境变量和需不需要重启问题
http://blog.163.com/guomaolin_gavin/blog/static/19961830720121114929321/
- Tomcat6.0数据源配置
涉及context.xml和server.xml http://blog.csdn.net/onlymilan/article/details/5493485
- json数据返回
<script type="text/javascript"> function xmlpage(){ var xhr=new XMLHttpRequest(); xh ...
- 使用shiro安全框架上传文件时用HttpSession获取ServletContext为null问题解决方法。
<!--在shiroFilter 中加入一下配置--> <init-param> <param-name>targetFilterLifecycle</par ...
- 《Linux内核分析》 week6作业-Linux内核fork()系统调用的创建过程
一.进程控制块PCB-stack_struct 进程在操作系统中都有一个结构,用于表示这个进程.这就是进程控制块(PCB),在Linux中具体实现是task_struct数据结构,它主要记录了以下信息 ...
- ValidateCode.cs验证码时设置缓存的使用
using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System. ...