sql----DDL语句
--查询工作是clerk的员工并且所在部门的人数
select e.empno,e.ename,d.deptno,d.dname,ed.cou
from emp e,dept d,(select deptno,count(empno)cou from
emp group by deptno
) ed where e.job='CLERK'
and d.deptno=e.deptno and e.deptno=ed.deptno;
--建表
create table 表名(
字段1 类型 ,
字段2 类型 [default 默认值],
字段3 类型 [default 默认值]
);
--设置每行显示大小
set linesize 100;
set pagesize 30;
--cmd清理
cls
--表结构添加字段
alter table t_user add(
列的名称1 列的类型 default 默认值,
列的名称2 列的类型 default 默认值
);
---修改表的结构更改字段类型
alter table t_user modify(
name varchar(20) default 'chong'
);
---重命名
rename 旧名字 to 新名字;
---delete 删除可以回滚
delete from t_user ;
rollback;
---truncate 删除后不能回滚
truncate table t_user;
---增加约束:1主键约束;2唯一约束;3检查约束;4非空约束;5外键约束;
--1 增加主键约束(primary key)
constraint t_user_id_pk primary key(id);
--指定id就是主键约束(在创建表结构时就要在末尾写)
--2唯一约束(unique)
constraint t_user_name_uk unique(name);
--检查约束(check)
check(age between 0 and 120)
constraint t_user_ck check(sex in('男','女'))
--4非空约束(not null)
--5外键约束(foreign key)
constraint t_user_fk foreign key(id) references t_user(id);
--结联删除
drop table t_user cascade constraint;
drop table t_user on delete cascade 父表被删除了字表也会被删除
------------添加约束
alter table 表名称 add constraint 约束名称 约束类型(约束字段)
alter table person add constraint person_pk primary key(pid)
alter table person add constraint person_uk unique(pid)
alter table person add constraint person_age_ck check(age between 0 and 100)
alter table person add constraint person_pk check(sex in('男','女') )
alter table person add constraint person_fk foreign key(id) references t_user(id);
-------删除约束
alter table 表名称 drop constraint 约束名称;
alter table person drop constraint person_age_ck
alter table person drop constraint person_pk
alter table person drop constraint person_fk
---rownum(伪列)
select ep.* from (select e.*,rownum ru from emp e where rownum<=10) ep where ep.ru>=5
clob 存储大文本对象,海量文字
blob 大的二进制数据,电影。图片。音乐
-------增加和修改字段
alter table t_user add(字段 类型 default 默认值);
alter table t_user modify(字段名 类型 default 默认值);
--==================================================