数据操作语言(DML:Data Manipulation Language)
主要包括以下语句:
--insert
--update
--delete
事务控制主要包含下列命令:
--commit
--rollback
--savepoint
插入单行语句
insert into stu1 values(22,'孙悟空')
插入空值
insert into stu1 values(22,'')
insert into stu1 values(22,null)
插入日期数据
insert into stu1 values(22,'10-9月-06')
insert into stu1 values(22,to_date('10-9月-06','YYYY-MM-DD'))
插入多行数据
insert into employee select * from employee where hire_date<to_date('1995-1-1','YYYY-MM-DD'');
修改数据
update employee set salary =salary*(1+0.2);
嵌入查询修改
update employee set depart_id=10,salary=500+(select ava(salary) from employee) where job_id=(select job_id from employee where employee_id=110) and employee_idK>110
删除数据
delete删除数据
delete from departments where department_id=210
事务处理
事务的特征
原子性
一致性
隔离性
持久性
事务控制的命令
事务提交:commit
事务回滚:rollback
设立保存点savepoint
savepoint 保存名称
rollback to 保存点名称
事务控制示例
delete from test;\
rollback;
insert into test values('a');
savepoint inserta;
insert into test value('b');
savepoint insertb;
insert into test values('c');
rollback to insertb; --撤销所有操作到insertb保存点
delete from test where test_str='a'
commit; --将所有操作写入数据库
rollback --所有操作已经提交,不能回滚
读一致性
事务级一致性 当一个会话正在修改数据时,其它的会话将不到该会话未提交的修改
语句级读一致性 保证单个查询所返回的数据与该查询开始时相一致