Java中对Oracle的表连接和对数据的增删改查操作的浅析

一.表连接分类

1.内连接 【inner joinselect
	from A表 别名 inner join B表 别名
	on 连接条件
	where 其他判定条件
	【注意】:只考虑连接条件成立的记录,对于连接条件出现null的记录直接舍弃,不出现在结果中
	
2.外连接 【left/right/full  outer join1)左外连接 [left outer join]:以左表为主,右表为辅
		select
		from A表 别名 left outer join B表 别名
		on 连接条件;
		
	2)右外连接[right outer join]:右表为主,左表为辅

	3)全外连接[full outer join]
	
3.自连接:通过为一张表定义两个别名的方式
	select  
	from A表 e1 left  join  A表 e2
	on  连接条件;
	
4.多表连接
	-- 请查询员工的姓名,所在部门的名称,以及所在的城市
	select e.last_name,d.department_name,lo.city
	from employees e left join departments d
	on e.department_id = d.department_id 
	left join locations lo
	on d.location_id = lo.location_id;
二.建表
1.语法
	create table 表名(
    	字段名 数据类型 [default] [约束],
        字段名 数据类型 [默认值],
        字段名 数据类型
    );
2.数据类型
	1)数字类型
	2)字符串类型
	3)日期类型
	4)大数据类型
3.约束
	1)主键约束(primary key)特点:非空唯一
	2)非空约束(not null)   特点:必须有数据
	3)唯一约束(unique)     特点:有值时,值不重复
	4)检查约束(check(条件)5)外键约束(references) 特点:值来自关联表的主键,可重复,可为空
4.特别约束---联合键
	1)联合主键
		create table stable(
        	sid number(3) references student(id),
            cid number(3) references course(id),
            score number(3),
            primary key(sid,cid)--联合主键
        );
     2)联合唯一键
     	create table test(
        	last_name varchar2(15),
            first_name varchar2(15),
            unique(last_name,first_name)--联合唯一键
        );
三.增数据 insert
1.全表插入
	语法:insert into 表名 values (1,2,....)
	要求:值的个数、类型、顺序必须与表里字段完全一致
2.选择插入
	语法:insert into 表名 (1,2...) values (1,2,...)
	要求:1)值的个数、类型、顺序必须与前面小括号里选择列一致
		 2)对于非空,并且没有默认值的字段,必须入选选择列
四.删除数据 delete
语法:delete from 表名 where 条件;
【注1】rop、deletetruncate区别
		1drop删除表,数据和表结构,不留一点痕迹 
	   		语法:drop table 表名 [cascade constraint]
		2delete删除数据:直接清空表里的数据,保留数据所占空间--逐条删除 
			删除一条数据语法:delete from 表名 where 条件(主键);
		3truncate命令:截断表里的数据,数据被删除,同时数据所占空间被释放,只保留表头--先销毁表,再重新创建
			语法:truncate table 表名;
			
【注2】关于关联表的删除
		1)有外键指向的两个表创建时:先父后子
		2)删除动作:先子后父
			Ⅰ)希望删除父表数据 ---①先删除子表数据,再删除自己
							 ---②或者先清空子表相应的外键,再删除自己
			Ⅱ)希望删除父表--drop table 表名 cascade constraint;
			
【注3cascade constraint:级联操作子表的外键约束,在删除父表的同时,将子表里的外键约束删除
五.修改数据 update
语法:update 表名 set 字段名 = 新值,字段名 = 新值,.. where 条件(主键);
六.SQL命令的分类
1.DQL ( Data Query Language )数据查询语言
	完成数据的查询 --- select
2.DML ( Data Manipulation Language)数据操纵语言
	完成对数据的访问操作---insert、update、delete
3.DDL ( Data Definition Language)数据定义语言
	用来操作数据库里对象的命令--create、drop、truncate、alter、rename
4.DCL ( Data Control Langeuage)数据控制语言
	权限管理的命令---grant、revoke
5.TCL ( Transaction Control Language )事务控制语言
	---commit 提交、rollback 回滚
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值