SQL> SQL的类型
SQL> 1、DML(Data Manipulation Language 数据操作语言): select insert update delete
SQL> 2、DDL(Data Definition Language 数据定义语言): create table,alter table,truncate table,drop table create/drop view,sequnece,index,synonym(同义词)
SQL> 3、DCL(Data Control Language 数据控制语言): grant(授权) revoke(撤销权限) SQL> --插入insert
SQL> insert into emp(empno,ename,sal,deptno) values(1001,'Tom',3000,10); SQL> --PreparedStatement pst = "insert into emp(empno,ename,sal,deptno) values(?,?,?,?)";
SQL> --地址符 &
SQL> insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno);
输入 empno 的值: 1002
输入 ename 的值: 'Mary'
输入 sal 的值: 2000
输入 deptno 的值: 20
原值 1: insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno)
新值 1: insert into emp(empno,ename,sal,deptno) values(1002,'Mary',2000,20) 已创建 1 行。 SQL> select empno,ename,sal,&t
2 from emp;
输入 t 的值: job
原值 1: select empno,ename,sal,&t
新值 1: select empno,ename,sal,job EMPNO ENAME SAL JOB
---------- ---------- ---------- ---------
1001 Tom 3000
1002 Mary 2000 SQL> select * from &t;
输入 t 的值: dept
原值 1: select * from &t
新值 1: select * from dept DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON SQL> rollback; 回退已完成。 SQL> --一次插入多条记录
SQL> create table emp10 as select * from emp where 1=2;
SQL> desc emp10
助解:desc table_name查看表结构 SQL> --一次性将emp中,所有10号部门的员工插入到emp10中
SQL> insert into emp10 select * from emp where deptno=10; SQL> 海量插入数据:
SQL> 1、数据泵(PLSQL程序)
SQL> dbms_datapump(程序包)
SQL> 2、SQL*Loader
SQL> 3、外部表 SQL> delete和truncate的区别
SQL> 1、delete逐条删除;truncate先摧毁表 再重建2
SQL> 2、delete是DML truncate是DDL
SQL> 3. delete可以回滚;truncate不可以回滚
SQL> 4、delete不会释放空间 truncate会
SQL> 5、delete会产生碎片 truncate不会
SQL>6、delete from后面可以写条件,truncate不可以。
SQL> 7、delete可以闪回(flashback) truncate不可以
助解:闪回技术有闪回表、闪回删除、闪回查询、闪回事务查询、闪回事务、闪回数据库、闪 回数据归档。其中,闪回查询、闪回事务查询用来“观察”过去;闪回数据归档并不是一个独立的功能,其功能是扩展闪回查询的时间窗口;闪回表、闪回删表能够以表为单位“回到”过去;闪回事务能够以事务为单位“回到”过去;闪回数据库能够以数据库为单位“回到”过去。
SQL> --flashback其实是一种恢复 SQL>delete和truncat执行时间对比
SQL> set timing on
SQL> delete from testdelete;
已用时间: 00: 00: 00.14
SQL> set timing off
SQL> drop table testdelete purge;
SQL> @d:\temp\testdelete.sql
SQL> set timing on
SQL> truncate table testdelete;
已用时间: 00: 00: 00.27
SQL> set timing off SQL> Oracle中的事务
SQL> 1、起始标志: 事务中的第一条DML语句
SQL> 2、结束标志:提交: 显式 commit 隐式: 正常退出 DDL DCL
SQL> 回滚: 显式 rollback 隐式: 非正常退出 掉电 宕机 SQL> create table testsavepoint
2 (tid number,tname varchar2(20));
SQL> set feedback on
SQL> insert into testsavepoint values(1,'Tom'); 已创建 1 行。 SQL> insert into testsavepoint values(2,'Mary'); 已创建 1 行。 SQL> savepoint a; 保存点已创建。 SQL> select * from testsavepoint; TID TNAME
---------- --------------------
1 Tom
2 Mary 已选择 2 行。 SQL> insert into testsavepoint values(3,'Maee'); 已创建 1 行。 SQL> select * from testsavepoint; TID TNAME
---------- --------------------
1 Tom
2 Mary
3 Maee 已选择 3 行。 SQL> rollback to savepoint a; 回退已完成。 SQL> select * from testsavepoint; TID TNAME
---------- --------------------
1 Tom
2 Mary 已选择 2 行。 SQL> commit; 提交完成。 SQL> set transaction read only; 事务处理集。 SQL> select * from testsavepoint; TID TNAME
---------- --------------------
1 Tom
2 Mary 已选择 2 行。 SQL> insert into testsavepoint values(3,'Maee');
insert into testsavepoint values(3,'Maee') 第 1 行出现错误:
ORA-01456: 不能在 READ ONLY 事务处理中执行插入/删除/更新操作 --oracle分页(Pageing Query) select * from (select rownum r,e1.* from (select * from emp order by sal) e1
where rownum <=8)
where r >=5;

Oracle入门基础(八)一一数据处理的更多相关文章

  1. Oracle入门基础(十三)一一java调用oracle存储过程

    package demo; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultS ...

  2. Oracle入门基础(十)一一数据库其他对象-视图/序列/索引/同义词

    SQL> --视图 SQL> create view empinfoview as select e.empno,e.ename,e.sal,e.sal*12 annsal,d.dname ...

  3. Oracle入门基础(十二)一一储存过程及触发器

    1.第一个存储过程 打印Hello World 调用存储过程: 1.exec sayhelloworld(); 2.begin sayhelloworld(); sayhelloworld(); en ...

  4. Oracle入门基础(十一)一一PL/SQL基本语法

    1.打印Hello World declare --说明部分 begin --程序 dbms_output.put_line('Hello World'); end; 2.引用型变量 查询并打印783 ...

  5. Oracle入门基础(九)一一创建表和管理表

    练习:查询每一年入职人数及总人数 SQL> select count(*) Total, 2 sum(decode(to_char(hiredate,'yyyy'),'1980',1,0)) & ...

  6. Oracle入门基础(七)一一集合运算

    SQL> /* SQL> 查询10和20号部门的员工 SQL> 1. select * from emp where deptno=10 or deptno=20; SQL> ...

  7. Oracle入门基础(六)一一子查询

    SQL> --查询工资比SCOTT高的员工信息 SQL> --1. SCOTT的工资 SQL> select sal from emp where ename='SCOTT'; SA ...

  8. Oracle入门基础(三)一一单行函数

    SQL> --字符函数 SQL> select lower('Hello World') 转小写,upper('Hello World') 转大写,initcap('hello world ...

  9. Oracle入门基础(二)一一过滤和排序

    SQL> --查询10号部门的员工 SQL> select * from emp where deptno=10; EMPNO ENAME JOB MGR HIREDATE SAL COM ...

随机推荐

  1. kali linux 安装lanmp遇到的问题

    安装LANMP步骤(需要ROOT权限)2020版本以上的Linux kali需要百度参考修改权限得文章 root@kali:~# wget http://dl.wdlinux.cn/files/lan ...

  2. python的标识符&&关键字

    和Java语言一样,python也有标识符和关键字.那么,你是否知道python的关键字呢?一起先从标识符了解python吧. 什么是标识符? 标识符,开发人员在开发过程中自定义的一些符号和名称. 标 ...

  3. svn问题总结

    有问题先尝试右键刷新,或clean up svn图标不显示 解决办法:打开注册表regedit,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curren ...

  4. while read line [linux] shell 学习

    转至:https://blog.csdn.net/qq_22083251/article/details/80484176 循环中的重定向 或许你应该在其他脚本中见过下面的这种写法: while re ...

  5. QT:MYSQL driver not loaded解决方法

    0.参考(按对本人帮助从高到低排列) Qt5.14.1 如何编译和使用mysql和mariadb数据库驱动 (15条消息) QMYSQL driver not loaded 的原理和解决办法_m158 ...

  6. Java应用层数据链路追踪(附优雅打印日志姿势)

    我是3y,一年CRUD经验用十年的markdown程序员‍常年被誉为优质八股文选手 今天来聊些大家都用得上的东西:数据链路追踪.之前引入了系统的监控来快速定位应用操作系统上的问题,而业务问题呢?在这篇 ...

  7. ASP.NET Core 简单集成签发 JWT (JSON Web Tokens)

    什么是 JWT ? 从 https://jwt.io/ 可以了解到对 JWT 的描述:JSON Web Tokens are an open, industry standard RFC 7519 m ...

  8. 构造方法__construct()与析构方法__destruct() 构造方法:刚出生时婴儿的啼哭 析构方法:老人临终时的遗言

    <?phpclass person{ var $name; var $sex; var $age;//构造方法 function __construct($name, $sex, $age) { ...

  9. gitee 的使用

    Git安装教程(windows)   Git是当今最流行的版本控制软件,它包含了许多高级工具,这里小编就讲一下Git的安装. 下载地址:https://git-scm.com/downloads 首先 ...

  10. 36 异常机制 自定义异常 实际应用中的经验总结 尽量添加finally语句块去释放占用的资源

    自定义异常 概念 使用Java内置的异常可以描述在编辑时出现的大部分异常情况.除此之外,用户还可以自定义异常.用户自定义异常类,只需继承Exception类即可. 在程序中使用自定义异常类,大体可分为 ...