在学习数据库编程总结了笔记,并分享出来。
09-数据库编程day03(oracle mysql sql)
一、学习目标
1.oracle创建和管理表
2.oracle的视图,索引,同义词,序列(了解作用和创建方式)
3.mysql库的增删改查
4.mysql表的增删改查
5.mysql数据的增删改查
二、复习
》多表查询的理论基础:笛卡尔集
笛卡尔集行数= 表1的行数*表2的行数
列数= 相加 N张表的连接条件至少是N-1
》统计:部门编号,部门名称,人数
select d.deptno,d.dname,count(e.empno) from emp e,dept d where e.deptno=d.deptno group by d.deptno,d.dname;
--右外连接 统计各部门人数
select d.deptno,d.dname,count(e.empno) from emp e,dept d where e.deptno(+)=d.deptno group by d.deptno,d.dname;
--自连接 显示xxx的老板是yyy
select e.ename||'''s boss is '||b.ename from emp e,emp b where e.mgr = b.empno;
——显示大老板是他妻子
select e.ename||'''s boss is '||nvl(b.ename,'his wife!') from emp e,emp b where e.mgr = b.empno(+);
》子查询可以放置的地方:
select
from
where
group by … err
having
order by … err
》子查询注意事项:
○ 书写规则,缩进,换行,加()
○ by后不能放置子查询
○ from 后放置的是集合
○ 单行子查询使用单行操作符,多行子查询使用多行操作符(in,any,all)
》练习中条件表达式:
decode(column|expr,search1,res1,search2,res2, …,default)
case expr when expr1 then res1
when expr2 then res2
…
else …
end
三、Oracle SQL语句
1、表的创建和管理
》表的管理:
○ 创建前提条件:表空间+权限
○ 注意事项
▪ 长度不能超过30
▪ 第一个必须是字母
数据类型
创建一个表
create table t1(id number,name varchar2(30));
增加一个列
alter table t1 add email varchar2(30);
修改列属性
alter table t1 modify email varchar2(40);
重命名列
alter table t1 rename column email to address;
删除列
alter table t1 drop column address;
重命名表--不用加table
SQL> rename t1 to t2;
SQL> drop table t2;
表已删除。
oracle给提供了回收站
purge的作用删除不经过回收站
回收站的表可以闪回(10g开始支持)
SQL> flashback table t2 to before drop;
闪回完成。
drop table t2 purge;
--清空回收站
drop table emp10;
purge recyclebin;
flashback table emp10 to before drop;
sys用户没有回收站
》通过已有表创建新表
create table newtable as select * from srctab where 1=2;
列可以指定default值,如果该列不显示插入,使用默认值。
2、表的约束
》表的约束(5种):
○ 检查
○ 非空
○ 唯一
○ 主键(非空+唯一)
○ 外键
》外键关系图:子表引用主表的主键
create table student(
id number constraint pk_student primary key,
name varchar2(30) not null,
email varchar2(30) unique,
sex varchar2(10) check(sex in ('男','女')),
sal number check(sal>10000),
deptno number(2) references dept(deptno) on delete set null
);
alter table student add hiredate date default sysdate;
3、序列的使用
4、视图
5、同义词
6、索引
7、客户端创建解决方案
四、MySQL SQL语句
1、MySQL基础
2、MySQL组合拳保证服务正常
3、MySQL库的操作
4、MySQL表的操作
5、MySQL数据的操作
6、MySQL组函数相关
7、MySQL日期函数、数字函数、字符函数
8、MySQL转换函数
9、MySQL多表查询准备
10、MySQL内连接
11、MySQL多表查询
12、MySQL补充
在学习数据库编程总结了笔记,并分享出来。
标签:drop,SQL,t1,varchar2,MySQL,Oracle,table,deptno From: https://blog.51cto.com/u_15405812/5834763