Oracle学习第二天

约束

1.约束的作用
定义规则、确保完整性
2.非空约束
①在创建表时设置非空约束
create table [table_name](column_name datatype not null,...)
②在修改表时添加非空约束
alter table [table_name] MODIFY column_name datatype not null
③在修改表时去除非空约束
alter talbe [table_name] modify column_name datatype null
3.主键约束
确保表中每一行数据唯一性(非空、唯一)
一张表只能设计一个主键约束
主键约束可以由多个字段构成(联合主键或复合主键)
①在创建表时设置主键约束
第一种:create table [table_name](column_name datatype PRIMARY KEY,...)
第二种:constraint constraint_name(约束的名字) primary key(column_name1,...)(在创建表的结束位置写)
②在修改表时添加主键约束
add constraint constraint_name primary key(column_name1,...)
rename constraint old_name to new_name(修改约束的名称)
③删除主键约束
disable|enable constraint constraint_name(禁用和启用约束)
drop constraint constraint_name(删除约束)
drop primary key[cascade](删除主键约束 cascade:级联删除 可选项)
4.外键约束
①在创建表时设置外键约束
方法一:create table table1(column_name datatype references table2(conlumn_name),...)(table1:从表  table2:主表 注:设置外键的字段必须是主表中的主键,主从表中相应的字段必须是同一个数据类型)(列级约束)
方法二:constraint constraint_name foreign key(column_name) references table_name(column_name)[on delete cascade](表级约束)
②在修改表时添加外键约束
add constraint constraint_name foreign key(column_name) references table_name(column)[on delete cascade]
③删除外键约束
disable|enable constraint constraint_name(禁用或启用约束)
drop constraint constraint_name(删除约束)
5.唯一约束
①唯一约束和主键约束的区别
主键字段值必须是非空的
唯一约束可以允许有一个空值
主键在每一张表只能有一个
唯一约束可以在每一张表可以有多个
②在创建表时设置唯一约束
create table table_name(column_name datatype unique)(列级)
constraint constraint_name unique(conlumn_name)(表级)
③在修改表时添加唯一约束
add constraint constraint_name unique(column_name)
④删除唯一约束
disable|enable constraint constraint_name(禁用或启用约束)
drop constraint constraint_name(删除约束)
6.检查约束(表中的值更有意义)
①在创建表时设置检查约束
create table table_name(column_name datatype check(expressions),...)(列级约束)
constraint constraint_name check(expressions)(表级约束)
②在修改表时添加检查约束
add constraint constraint_name check(expressiongs)
③删除检查约束
disable|enable constraint constraint_name(禁用或启用约束)
drop constraint constraint_name(删除约束)

查询

1.基本查询语句
select [distinct] column_name1,...|* from table_name [where conditions]
2.在sql plus 中设置格式
column column_name heading new_name(更改查询后的字段名,并不是真正的更改表中的字段名)(column可以简写成col)
column column_name format dataformat(设置结果显示的格式)
column conlumn_name clear(清除设置的格式)
3.查询表中的所有字段及指定字段
select * from table_name
select column_name1,...from table_name
4.给字段设置别名
select column_name as new_name from table_name(as可以省略)
5.运算符和表达式
算术运算符(+,-,*,/)
比较运算符(>,>=,<,<=,=,<>)
逻辑运算符(and,or,not)
6.在select语句中运用运算符
①select id,username,salary+200 from users;
②select * from users where salary>800;
③select * from users where salary>800 and salary<1000;
7.带条件的查询
①单一条件查询
②多条件查询
③逻辑运算符的优先级:按not、and、or的顺序依次递减

8.模糊查询
①通配符的使用(-,%)
②使用like查询
9.范围查询
between..and..
in()/not in()
10.排序
order by  desc/asc
11.case..when语句的使用
case column_name when value1 then result1,...[else result] end
例:select username,case username when 'aaa' then '计算机部门' when 'bbb' then '市场部门' else '其他部门' end as 部门 from users;


case when column_name=value1 then result1,...[else result] end;
12.decode语句的使用
decode(column_name,value1,result1,..,defaultvalue);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值