※select语句,数据查(此处略)
※ insert语句,数据增
基本语法:
insert into tb_name[(col_name,...)]
values(val1,....);
例:
create table stu(
id number primary key,
name varchar2(10),
age number
);
insert into stu values(1,’lisi’,30);
insert into stu(id, name, age) values(2,’lisi’,30);
insert into stu(name,id,age) values(’lisi’,3,30);
insert into stu(id, name) values(4,’lisi’);
注意:没有操作的列为null值
note:
1.如果给每个列都插入数据,可以省略tb_name后边的列
2.字符串和日期类型的值必须使用‘’引起来
※ 使用子查询插入
insert into table_name[(col_name,....)]
select .......
例:insert into stu
//将查询到的id,first_name插入表stu中
select id,first_name
from s_emp
where first_name is not null;
※ delete语句,数据删
基本语法:
delete [from] tbl_name [where option...]
删除整张表
delete from stu;
删除部门数据
delete from stu
where id>=8 and id<=10;
注意:只删除数据不删除存储空间
※ truncate关键字
清空表记录,且释放表空间(返回建表初始状态)
truncate table tb_name
例: truncate table stt;
※ 级联删除数据 on delete cascade \ on delete set null关键字
- on delete cascade 当引的另外一张表的主键数据删除级联的删除当前表外键所对对应的行。
- on delete set null当引的另外一张表的主键数据删除级联的设置当前表外键所对对应的列为null。
create table hus(
id number primary key,
name varchar2(10)
);
create table wife(
id number primary key,
name varchar2(10),
hus_id number reference hus(id) on delete cascade
);
注意:on delete cascade、on delete set null都是加在外键的声明后面。
※ update 语句,数据改
基本语法:
update table_name set column_name=value,[column_name=value]
[where condition...];
例: update stu set ids=26,name=briup
where ids=1
所有为name的全部替换
update stu set name=‘huzl’
※ 事务控制
事物:一系列操作的集合(整体)
※ 1 .DML—>insert delete update
多个sql语句为一个事物,commit rollback
※ 2 .DDL ->alter rename create truncate drop
每一sql就是一个事物,自带commit;
※ 事物的开始
当一个sql命令执行一个事务就开始了,一个事物可能包含一条sql语句也可能是一个sql语句的集合(DML)
※ 事物提交结束的方式
1.commit或者rollback
2.DDL或者DCL命令执行
3.错误,退出,或者系统崩溃
※ 事务控制使用:commit,savepoint,rollback;
insert into stu values(1,'b');
commit;//提交
insert into stu vaules(2,'b');
rollback;//回滚
//savepoint与rollback连用
intsert into stu values(3,'b');
savepoint a;
intsert into stu values(4,'b');
savepoint b;
intsert into stu values(5,'b');
savepoint c;
intsert into stu values(6,'b');
rollback to b;
//回退到b,只会有前两个的信息
※ 隐式事务提交:
1.DDL语句(create..),执行
2.DCL语句(gant….),执行
3.正常退出终端。
注意:如果系统崩溃,或者sqlplus不增长退出,事务回滚。
※ 事务的ACID原则:
1.原子性:要不全成功,要不全失败
2.一致性:从一个一致性状态到达另外一个一致性状态
3.隔离性:事务之间互不影响
4.持久性:事务提交后,能够持久性影响数据库。