Oracle更新操作笔记以及语句
2014-08-25来源:

这几天都在学学习数据库Oracle,之前写了一个Oracle查询语句的笔记,现在给大家公布下更新操作的笔记,其中包事务的处理。

*数据库更新操作数据库主要操作分为两种

·数据库查询操作:select

·数据库更新操作:insert(增加)、update(修改、更新)、delete(删除)

复制一张表 create table myemp as select * from emp;(复制了emp表)

·insert 添加数据语法

标准格式:

_____________________范例________________________________

insert into myemp( EMPNO,ENAME, JOB,MGR, HIREDATE, SAL, COMM, DEPTNO)

values(7899,'张三','清洁工',7369,'02-4月 -81',9000,300,40);

___________________________________________________________________

简略写法:因为要添加所有字段的的值,就不用写出字段的名称,只要字段的顺序和表的顺序一致就行

_____________________范例___________________________________________________

insert into myemp values(7899,'张三','清洁工',7369,'02-4月 -81',9000,300,40);

____________________________________________________________________________

to_date函数,把一个字符串转换成DATE型数据to_date('2001-01-09','yyyy-mm-dd')

·update 更新语句 可加where条件 表示修改条件(修改局部)

_______________________范例___________________

update myemp set comm=1000;(所有奖金修改1000

)

update myemp set comm=5000 where empno=7899;(7899编号的人修改奖金5000)

______________________________________________

·delete删除语句

delete from 表名称 删除表。 完整删除

delete from 表名称 where 条件; 局部删除

删除表,delete from myemp;##############事物的处理###########

·事物处理就是保证数据操作的完整性,所有的操作要么同时成功,要么同时失败。

其实就是说一个用户对表进行 *增 *删 *改 的时候,会建立以一个session(会话)

1.提交事物:commit; 确定操作正确。 提交之后就不能回滚

2.回滚操作:rollback; 回滚之前操作。

*!死锁!*

一个session更新了数据库记录,其他session是不法立刻更新的,要等待对方提交之后才能更新

--conn scott/tiger@orcl_localhost;

--create table myemp as select * from emp;

--select * from myemp;

/*

insert into myemp( EMPNO,ENAME, JOB,MGR, HIREDATE, SAL, COMM, DEPTNO)

values(7899,'张三','清洁工',7369,'02-4月 -81',9000,300,40);

*/

/*

insert into myemp

values(7899,'李四','送水',7369,'02-4月 -81',9000,300,40);

insert into myemp values (7983,'王五','清洁工',null,'02-4月 -81',8000,null,40);

insert into myemp

values(7899,'李九','保洁',7369,to_date('2001-01-09','yyyy-mm-dd'),9000,300,40);

select * from myemp;

*/

--update myemp set comm=1000;

--update myemp set comm=5000 where empno=7899;

--update myemp set mgr =null ,comm=null where empno in(7899,7983,7899);

select * from myemp;

delete from myemp where empno=7899;

select * from myemp;

##############事物的处理###########

--create table emp10 as select * from emp where deptno=10;

--select * from emp10 where deptno =10;

--delete from emp10 where empno=7782;

--select * from emp10;

更多信息请查看IT技术专栏

推荐信息
Baidu
map