Oracle操作语句--增加/删除

1.删除1980年雇员的雇员信息;

delete  from myemp

where     hiredate between to_date(‘1980-1-1‘,‘yyyy-mm-dd‘)

and to_date(‘1980-12-31‘,‘yyyy-mm-dd‘) ;

执行上述语句后其实还没有真正意义上的更新,必须执行下面的语句才会彻底删除,否则其他session会话查询的时候,1980年的员工信息还依然存在。但是当你退出之后Oracle会自动commit的。

COMMIT WORK;

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

2、事务操作命令

S1:SCOTT用户分别登录两个SQL PLUS窗口是session1和session2;

S2:窗口session1和session2分别查看myemp数据表信息;

S3:窗口session1,执行语句:

INSERT

INTO myemp(empno,ename,hiredate, job, sal)

VALUES(1234,‘李兴华‘,to_date(‘1989-09-19‘,‘yyyy-mm-dd‘),‘MANAGER‘,3000);

UPDATE MYEMP

SET SAL=5000 WHERE EMPNO=1234;

SAVEPOINT SP_A;

SELECT count(*) FROM myemp;

结果:

切换窗口session2,执行语句:

SELECT count(*) FROM myemp;

结果:

S4:窗口session1,执行语句:

INSERT

INTO myemp(empno,ename,hiredate, job, sal)

VALUES(5678,‘董鸣楠‘,to_date(‘2003-07-27‘,‘yyyy-mm-dd‘), ‘HR‘,2000);

UPDATE myemp

SET job=‘CEO‘ WHERE empno=5678;

SAVEPOINT SP_B;

SELECT count(*) FROM myemp;

结果:

切换窗口session2,执行语句:

SELECT count(*) FROM myemp;

结果:

S5:窗口session1,执行语句:

DELETE FROM myemp;

SELECT count(*) FROM myemp;

结果:

切换窗口session2,执行语句:

SELECT count(*) FROM myemp;

结果:

S6:窗口session1,执行语句:

S6:窗口session1,执行语句:

--使用回滚到节点sp_B
ROLLBACK  TO SP_B;
SELECT count(*) FROM myemp;

ROLLBACK TO SP_A;

SELECT count(*) FROM myemp;

ROLLBACK;

SELECT count(*) FROM myemp

S7:窗口session1,执行语句:

INSERT

INTO myemp(empno,ename,hiredate, job, sal)

VALUES(5678,‘董鸣楠‘,to_date(‘2003-07-27‘,‘yyyy-mm-dd‘), ‘HR‘,2000);

UPDATE myemp

SET job=‘CEO‘ WHERE empno=5678;

COMMIT;

SELECT count(*) FROM myemp;

结果:

切换窗口session2,执行语句:

SELECT count(*) FROM myemp;

结果:

---上述主要实验的目的是想让读者明白设置保存节点,与事件回滚的用法,还有就是使用删除语句和插入语句必须使用commit语句,不然只是视图显示出来你要的结果而已,其它session会话看不见操作,虽然退出Oracle后他会自动commit,但是保险起见还是commit,其他session在同一时间登录的才可以看到更新操作。

原文地址:https://www.cnblogs.com/hmy-666/p/11824982.html

时间: 2024-10-28 10:45:19

Oracle操作语句--增加/删除的相关文章

常用Oracle操作语句

--常用的字段类型有:varchar2,char,nchar,date,long,number,float,BLOB,CLOB --添加表字段 alter table tablename add AREAID Number(18); --修改表字段 alter table tablename modify SJLY varchar2(200); --删除表字段 alter table tablename drop (AREAID); --DBA_TABLES.ALL_TABLES和USER_TA

js对table操作(增加删除交换上下TR)

<table width="100%" border="0" cellpadding="2" cellspacing="1" class="table_bg space_top" id="gallery-table"> <tr> <td width="3%" nowrap align=center class="table_ti

Oracle 常用语句整理

Oracle 常用语句整理 最近做了份大型数据库作业.遇到了一些问题,在网上找的很是辛苦,于是,将一些常用的语句记录下来,方便大家学习.都是一些基本的东西.如果忘了,可以来看看. 1.创建临时表空间 create temporary tablespace car_data //car_data,表空间名 tempfile 'C:\Users\Administrator\Desktop\car_data.dbf'//表空间路径 size 50m autoextend on next 50m max

MySQL数据库(3)_MySQL数据库表记录操作语句

附: MYSQL5.7版本sql_mode=only_full_group_by问题 1.查询当前sql_mode: select @@sql_mode 2.查询出来的值为: set @@sql_mode ='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'; 3.修改s

ORACLE基本定义、操作语句

ORACLE基本定义.操作语句 一.           表 1.创建表 CREATE TABLE TAB_NAME ( COL_01  VARCHAR2(10) NOT NULL, COL_02  NUMBER(8,2), COL_03  DATE ); 2.添加主键约束 ALTER TABLE TAB_NAME ADD CONSTRAINT PK_COL_01 PRIMARY KEY(COL_01); 3.添加唯一性约束 ALTER TABLE TAB_NAME ADD CONSTRAINT

Oracle 数据库常用操作语句大全

Oracle 数据库常用操作语句大全 一.Oracle数据库操作 1.根据删除的时间查询出被删除的数据 select * from szdj_work_plan AS OF TIMESTAMP TO_TIMESTAMP('2018-1-19 16:51:37', 'yyyy-mm-dd hh24:mi:ss') where subject='测试一下删除0119' 1.表中唯一的最大的值 select hibernate_sequence.nextval from dual 1.创建数据库 cr

oracle数据库操作语句

常用到的oracle数据库操作语句,以下仅供参考: 一. 查询 1.查询某个数据库表大于某个日期的所有数据条数    select count(*) from ALARM_LOG t where t.ALARM_START_TIME> to_date('2017-01-10 08:00:00','yyyy-mm-dd hh24:mi:ss');   查询某个数据库表大于某个日期的所有历史数据  select * from ALARM_LOG t where t.ALARM_START_TIME>

NSTableView 表格操作:增加,删除,编辑(方法2)

NSTableView 表格操作:增加,删除,编辑(方法2) 在: NSWindowController 新建表单 (H,M,XIB三个文件+新建一个类放CellData) 1.不使用delegate 2.数据源直接是当前文件File's Owner 3.H继承NSTableView协议,将需要的几个函数放入 4.增加一个列表数据单元类 这个方法的特点是: 当新建立一个窗体,显示一个表格内容,不使用Deleget就少了一个类的2个文件,让程序简单化 操作步骤: STEP1 将NSTableVie

数据库基本概念及Oracle基本语句

一.数据库分类 通常是按照数据模型的特点将传统数据库系统分成网状数据库.层次数据库和关系数据库三种. 1.网状数据库 顾名思义,网状数据库采用的是以记录类型为结点的网状数据模型,是一种导航式(Navigation)的数据库--用户在操作数据库时不但要指明要访问的对象(数据),还要规定其存取路径. 网状数据库模型对于层次和非层次结构的信息都能比较自然的模拟,在关系数据库出现之前网状DBMS要比层次DBMS用得普遍.在数据库发展史上,网状数据库占有重要地位. 2.层次型数据库 紧随网络型数据库之后出