Java
条件语句:
IF:
执行过程:
嵌套IF:
执行过程:
if...else:
执行过程:
多重 if:
执行过程:
Switch语句:
执行过程:当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;如果没有匹配的 case 语句则执行 default 块的代码。
注意:
1. 关于switch语句:
1)break是可以省略的,如果省略了就一直执行到遇到break为止;
2) switch 后面的小括号中的变量应该是byte,char,short,int,string中的一种;
3)default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case中的value是否匹配,程序会从default开始执行直到第一个break出现。
2. 关于if以及switch的选择
当判断固定个数的值的时候,可以使用if,也可以使用switch。但是建议使用switch,效率相对较高。
3.break 和 continue
break:作用于switch ,和循环语句,用于跳出,或者称为结束。
break语句单独存在时,下面不要定义其他语句,因为执行不到,编译会失败。当循环嵌套时,break只跳出当前所在循环。要跳出嵌套中的外部循环,只要给循环起名字即可,这个名字称之为标号。
continue:只作用于循环结构,继续循环用的。
作用:结束本次循环,继续下次循环。该语句单独存在时,下面不可以定义语句,执行不到。
从键盘读取字符的语句
Scanner sc(自取) = new Scanner(System.in); Int a = sc.nextInt(); |
ORACLE
在sqlplus 中设置查询结果的格式
修改列名显示结果 : Column/Col 列名 heading 新名字; [仅修改查询结果中的列名,实际数据不被修改] |
修改列的内容显示长度 : Column/Col 列名 format 格式;[字符类型仅能设置显示的长度.设置字符型以a开头后面加上长度;数值型用9代表一位数字,数字前可加$] Eg:col name format a10; Col idnumber format 999; |
清除已更改的结构 : Column/Col 列名 clear; |
数据查询语言(DQL)--- 简单查询
简单查询(使用关键字distinct可以去除重复数据)
Select [DISTINCT] 要查询的列名 | * from 表名 [where 条件];’ |
给字段设置别名
Select 列名 as 别名,…. From 表名; |
PS:oracle在使用别名时,可以用双引号、不使用、使用as来表明别名。但不能使用单引号。
EG:
selectename "姓名",sal*13+nvl(comm,0)*13"年收入" from emp;
selectename 姓名,sal*13+nvl(comm,0)*13年收入 from emp;
selectename as "姓名",sal*13+nvl(comm,0)*13as "年收入" from emp;
使用nvl函数来处理null
nvl是oracle提供的函数,是用于处理null值使用的。
语法:nvl(值1,值2) 解释:nvl值1为null时则取值2,值1不为null时则取值1原值。 select empno,ename,(sal+nvl(comm,0))*13 from emp;
|
运算符和表达式
算术运算符 : + - * /
比较运算符 : > >= <<= <>(不等于)
逻辑运算符 : and、or、not [优先级顺序为:not、and、or]
连接运算符 : ||
DDL、DML、DQL、DLC、TCL
数据定义语言(DDL)
数据定义语言 DDL( Data Definition Language ) , 是 SQL 语言集中负责数据结构定义及数据库对象定义的语言 , 主要有 create、alter、drop 和 truncate 四种常用语句。对数据结构起作用。
create 数据库对象的创建
alter 修改数据库对象
drop 删除数据库对象
truncate 清空表数据
数据操纵语言(DML)
数据操纵语言 DML( Data Manipulation Language ) , 用户通过它可以实现对数据表的基本操作 ,即对表中数据的增、删、改。DML 对数据起作用。
insert 插入操作
update 更新操作
delete 删除操作
数据查询语言(DQL)
数据查询语言 DQL( Data Query Language ) , 主要通过它实现对数据的查询操作。
select 查询操作
数据控制语言(DCL)
数据控制语言DCL(DataControl Language),用来控制存取许可、存取权限等。
grant 权限分配
revoke 权限回收
事务控制语言(TCL)
事务控制语言TCL(Transaction Control Language)是用来对 DML操作进行确认的。
用于事务控制的语句有:
COMMIT- 提交并结束事务处理
ROLLBACK- 撤销事务中已完成的工作
SAVEPOINT– 标记事务中可以回滚的点
TCL基本概念
事务是对数据库操作的逻辑单位,在一个事务中由DML (数据操纵语言)、DDL (数据定义语言)和DCL (数据控制语言)语句组成一个逻辑整体。
一个事务中可以包含多条DML语句,或者包含一条DDL语句,或者包含一条DCL语句。
事务具有四个属性,这四个属性的英文单词首字母合在一起就是ACID 。这四个属性是:
原子性(Atomicity ):事务要么全部执行,要么全部不执行,不允许部分执行。
一致性(Consistency ):事务把数据库从一个一致状态带入另一个一致状态。
独立性(Isolation ):一个事务的执行不受其他事务的影响。
持续性(Durability ):一旦事务提交,就永久有效,不受关机等情况的影响。
事务控制
对事务的操作有两个:
提交( COMMIT )- 提交并结束事务处理
回滚( ROLLBACK )-撤销事务中已完成的工作
事务开始于第一条SQL语句,在下列之一情况下结束:
(1)遇到COMMIT或ROLLBACK命令。
(2)遇到一条DDL或者DCL命令。
(3)系统发生错误、退出或者崩溃。
Roll back操作
回滚事务有两种方式:完全回滚,即回滚到事务的开始;部分回滚事务,即可以将事务有选择地回滚到中间的某个点。部分回滚是通过设置保存点( SAVEPOINT )来实现的。
-部分回滚
…
savepoint保存点名称;//设置保存点
…
rollbackto [savepoint] 保存点名称;//回滚到保存点
特别注意:设置保存点及回滚操作是配合delete语句使用,用来找回使用delete删除的数据。而通过truncate删除的表数据是无法通过此方法找回的。
PS:(1)在一个事务中可以保存多个保存点。
(2)设置保存点是有资源开销的。
(3)一旦回退后,该保存点就消失了,不能再次回退。
(4)一旦提交了事务,则不能回退到任何保存点。
事务隔离级别(了解)
数据库的并发操作会带来以下问题:
(1)脏读:当一个事务读取另外一个事务尚未提交的修改时,产生脏读。(在oracle中,没有脏读)
(2)不可重复读:同一查询在同一个事务中,多次执行,由于其他提交事务所做的修改或删除,每次返回不同的结果集。
(3)幻读:同一查询在同一事务中多次执行,由于其他提交事务所做的插入操作,每次返回不同的结果集,这个现象称为幻读。
oracle有三种事务隔离级别:
(1)read commited:默认的事务隔离级别,保证不会出现脏读,但可能出现不可重复读和幻读
(2)serializable:可以保证不出现脏读、不可重复读、幻读
(3)read-only:可以保证不出现脏读、不可重复读、幻读,只能进行读操作,不能进行修改、删除、插入操作。
设置当前事务的隔离级别
set transaction isolation level read committed;(默认)
set transaction isolation level serializable;
set transaction read only;
设置整个会话的隔离级别
alter session set isolation level read committed;
alter session set isolation level serializable;