|
QL*PLUS环境命令
结束时可以写; 也可以不写
desc dept
show user
connect scott/tiger
set linesize 200
set pagesize 100
spool c:\aa.txt
SQL语句
不需要分号结束的命令,sqlplus环境命令
show user
connect scott/tiger
desc dept
set linesize 200
set pagesize 100
SQL语句结束时候一定要 有分号或者换行加/
《1》DDL语句(数据定义语言) Data Define Language
create
alter
drop
truncate 开头的语句 truncate table <表名>
特点:<1>建立和修改数据对象
<2>建立和修改直接存入库中,直接生效
建立表
create table class(--班级表
classid number(2) primary key,
cname varchar2(20) not null);
/*wdsadsadsad
asdsadsadsadsad
多行注释
*/
create table student( --学生表
xh number(4) primary key, --学号
name varchar2(10) not null, --姓名
sex char(2) check (sex in ('男','女')),--性别
birthday date,--生日
sal number(7,2), --奖学金
classid number(2) references class(classid) --班级
);
外键引用的列一定是主键或有unique约束的列
alter table student add (shengfenzheng number(18));
drop table student; 删除结构
delete from student; 只删除数据,速度慢,数据可以恢复
truncate table student; 删除记录的 速度快 数据不能恢复
《2》 DML语句(数据操作语言) Data Manupilate Language
select
insert
delete
update
特点:<1>对数据起作用的
<2> 这些语句的修改是在内存中发生的
要想改动存入库中必须要commit语句
insert into student(xh,name,sex)
values (&xh,'&n','&sd');
insert into student(xh,name,sex)
values (&学号,'&姓名','&性别');
转义字符 \
打开转义 set escape on
insert into dept
values (90,'JO&HI','北京');
insert into dept
values (92,'JO\&HI','大家');
《3》 TCL(事务控制语句) Transaction Control Language
commit; 提交 修改保存到数据库中
rollback; 回滚 取消内存中的改动
savepoint;保存点 分解事务的 把事务变小
DDL语句 会自动提交以前未提交的事务
关闭SQLplus工具 也会自动提交未提交的事务的
事务 -- 就是一个完整的对数据的DML操作
所有事务 都是要明确的提交和回滚的
--转账
update 账目表
set 钱=钱-500
where 帐号='A';
update 账目表
set 钱=钱+500
where 帐号='B';
commit; |
|