Oracle_处理数据
来源:互联网 发布:个人网络炒美元 编辑:程序博客网 时间:2024/05/29 19:14
SQL语句
1. DML语句(Data Manipulation Language 数据操作语言): insert update delete select
2. DDL语句(Data Definition Language 数据定义语言): create/alter/drop/truncate table
create/drop view,create/drop index(sequence,synonym)
3. DCL语句(Data Control Language 数据控制语言): commit rollback
--地址符 &
SQL> insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno);
输入 empno 的值: 1003
输入 ename 的值: 'Mike'
输入 sal 的值: 3000
输入 deptno 的值: 20
原值 1: insert into emp(empno,ename,sal,deptno) values(&empno,&ename,&sal,&deptno)
新值 1: insert into emp(empno,ename,sal,deptno) values(1003,'Mike',3000,20)
--在DML语句中使用地址符
SQL> select empno,ename,&a from emp;
输入 a 的值: sal
原值 1: select empno,ename,&a
新值 1: select empno,ename,sal
一次插入(拷贝)一批数据
SQL> create table emp20 as select * from emp where 1=2;
因为1=2的条件为假,所以创建的表只是emp表的框架,无具体内容
一次性将emp中所有20号部门的员工插入到emp20
SQL> insert into emp20 select * from emp where deptno=20;
truncate table emp20;
等同于: delete from emp20;
delete和truncate table的区别
1. delete是DML,truncate是DDL (DML可以rollback,DDL不可以)
2. delete逐条删除;truncate先摧毁,再重建
3. delet会产生碎片;truncate不会
4. delete不会释放空间;truncate会
set feedback off------》会将“表已创建,已插入一行”等Oracle自己打印出来提示字符串的功能关闭
@c:\sql.sql-----------》加载并执行C盘下Sql.sql文件,文件中会创建一个testdelete表并插入5000行数据
SQL> delete from testdelete;
已用时间: 00: 00: 00.04
SQL> drop table testdelete purge;-----》purge会一并将testdelete删除后在Oracle回收站的testdelete删除
已用时间: 00: 00: 01.92 SQL> truncate table testdelete;
已用时间: 00: 00: 00.54
总结:delete 性能比 truncate要好
Oracle中的事务
1. 事务的起始标志: DML语句
2. 事务的结束标志: 提交: 显式提交 commit
隐式提交 DDL 语句,正常退出 exit
回滚: 显式 rollback
隐式 非正常退出,掉电,宕机
SQL> --保存点-------在Java中也支持保存点
SQL> create table testsavepoint
2 (tid number,tname varchar2(20));
SQL> insert into testsavepoint values(1,'Tom');
SQL> insert into testsavepoint values(2,'Mary');
定义保存点
SQL> savepoint a;
SQL> insert into testsavepoint values(3,'Moke');
SQL> rollback to savepoint a;---》只会回退到保存点,不会将1,2的数据回退
- Oracle_处理数据
- Oracle_日期型数据
- Oracle_数据的还原_09
- oracle_数据定义语言_ddl
- oracle_随机抽取N条数据
- oracle_日期维度表插入数据
- Oracle_利用exp和imp迁移数据
- Oracle_中to_char和to_number等格式处理
- oracle_结果集的处理--有道笔记整理
- Oracle_导入大批量数据到表中的方法
- ORACLE_语言
- Oracle_约束
- oracle_日期
- oracle_三角函数
- ORACLE_触发器
- ORACLE_数据处理
- oracle_视图
- Oracle_字典
- Eclipse中如何修改SVN的地址
- Java菜鸟学习笔记--面向对象篇(八):成员变量和局部变量
- 【互动话题】如何赚外快?
- Maven中的WEB工程转换为MyEclipse中的WEB工程(自动部署,调试)
- (转载)简单linux C++内存池
- Oracle_处理数据
- python列表排序
- grails自动创建MYSQL数据库字符集设置utf8
- proxool 数据库工具使用
- 电影记忆之16(人工智能)
- HTML5 Web SQL Database 数据库的使用方法
- hdu 还是畅通工程
- 删除windows默认共享
- WAP协议