Oracle期末复习、知识点总结

Oracle期末复习知识点总结

  • 时光匆匆,又到了期末考试的时间,大概总结一下Oracle数据库这门课程的知识点。

核心技能目标

  • 了解Oracle数据库。
  • 掌握Oracle的结构。
  • 深入了解Oracle及SQL语句的应用。
  • 掌握Oracle数据库的函数。
  • 掌握Oracle数据库的过程和游标。
  • 能够使用Oracle设计出比较合理的数据库。

创建数据库表(基础部分)

create table 表名 
(
列名1   数据类型
列名2   数据类型
.....
列名n   数据类型
);

SQL语句(增删改查)

  • 查询数据语句
#查询user表中的所有数据
select * from user;
#查询user表中id为1的数据
select * from user where id=1; 
  • 删除数据语句
#删除user表
drop table user;
#删除表中所有数据
delete from user;
#删除表中id为1的数据
delete from user where id=1;
  • 添加数据语句
#添加数据/插入数据
insert  into  user values (2,'肥肉', '男', 20, 2232.15, '2029-03-02');
insert  into  user (id,name,age, height, resg date) values(2,'得得', '男', 20, 22.15, '2019-03-02');
  • 更新数据语句
#更新数据
update user set name='张三' where id=1;

Oracle数据库中基本数据类型

  • 字符类型
    CHAR类型:CHAR表示固定长度字符串,长度不足时使用空格补充。
    VARCHAR2类型:表示可变长度字符串,在定义该数据类型时,应该指定其大小。
  • 数值类型
    NUMBER类型:可以存储正数、负数、零、定点数和精度为38位的浮点数,格式为NUMBER(M,N)。其中M表示精度,代表数字的总位数;N表示小数点右侧数字的位数。
  • 日期类型
    DATA类型:用于存储表中的日期和时间数据。.

Oracle常用函数

字符函数

  • ASCII:返回与指定的字符对应的十进制数。
  • CHR:参数为整数,表示某个字符的Unicode码,返回对应的字符。
  • CONCAT:连接两个字符串。
  • INITCAP:返回字符串并将字符串的第一个字母变为大写。
  • INSTR:在一个字符串中搜索指定的字符,返回发现指定的字符位置。
  • LENGTH:返回字符串的长度。
  • LOWER:返回字符串,并将所有的字符小写。
  • UPPER:返回字符串,并将所有字符大写。
  • RPAD:在列的右边粘贴字符。
  • LPAD:在列的左边粘贴字符。
  • LTRIM:删除左边出现的字符串。
  • RTRIM:删除右边出现的字符串。
  • SUBSTR:取子字符串。
  • REPLACE:将一个字符串中的子字符串替换成其他的字符串。
  • TRIM:删除字符串两边的字符串,如删除字符串两边的空格,删除字符串两边的#字符。
    具体的使用方法,网上一搜都有,而且很全面。

数学函数

  • ABS:返回指定值的绝对值。
  • CEIL:返回大于或等于给出数字的最小整数。
  • FLOOR:对给定的数字取整数。
  • MOD(n1,n2):返回一个n1除以n2的余数。
  • POWER(n1,n2):返回n1的n2次方。
  • SIGN:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0。
  • SQRT:返回数值的根。
  • ROUND:按照指定的精度四舍五入。
  • TRUNC:按照指定的精度截取一个数。

日期函数

日期函数常用格式模型

  • HH:一天的小时数(01-12)
  • HH24:一天的小时数(01-23)
  • MI:分钟(00-59)
  • SS:秒(00-59)
  • MS:毫秒(000-999)
  • Y,YYY:带逗号的年(4和更多位)
  • YYYY:年(4和更多位)
  • YY:年的后两位
  • MM:月份(01-12)
  • DAY:全长大写日期名(9字符)
  • day:全长小写日期名(9字符)
  • DY:缩写大小日期名(3字符)
  • Dy:缩写混合大小写日期名(3字符)
  • dy:缩写小写日期名(3字符)
  • DDD:一年里的日子(001-366)
  • DD:一个月里的日子(01-31)
  • D:一周里的日子(1-7;SUN=1)
  • W:一个月里的周数(1-5),这里第一周从该月第一天开始
  • WW:一年里的周数(1-53),这里的第一周从该年的第一天开始
  • Q:季度
  • 常用格式:yyyy-mm-dd 年月日

常用日期函数

  • SYSDATE:用来得到系统的当前日期
  • ADD_MONTHS:增加或减去月份
  • LAST_DAY:返回日期的最后一天
  • MONTHS_BETWEEN(date2,date1):给出date2和date1相差的月份
  • NEXT_DAY(date,‘day’):给出日期date和星期x之后计算下一个星期的日期

转换函数

  • to_char:转换成string类型
  • to_date:转换成date类型
  • to_number:转换成number类型

索引

索引类型:B-tree索引,位图索引,函数索引。

  • 创建索引
CREATE INDEX 索引名 ON 表名(列名);
  • 删除索引
DROP INDEX 索引名;
  • 查看索引
SELECT * FROM ALL_INDEXES WHERE TABLE_NAME = '表名'

数据完整性(约束)

  • 非空约束:not null,非空约束就是限制必须为某个列提供值。
create table user(
user_name varchar2(20) not null    --不为空
);
  • 主键约束:primary key,主键约束相当于非空约束和唯一性约束的组合。
create table user(
user_name varchar2(20) primary key    --主键
);
  • 唯一约束:unique,表示数据不允许出现重复的情况。
create table user(
user_name varchar2(20) unique   --唯一约束
);
  • 外键约束:foreign key,外键约束指定的就是子表的某一个字段 的内容取值范围必须由主表指定,通过外键将两张数据表联系起来。

  • 默认约束:default,默认约束表示不输入值,默认输入指定的值。

create table user(
user_name varchar2(20) default '张三'   --默认约束
);

序列

  • 创建序列
#创建序列,seq_name序列名。一般以seq开头,或者s开头
create sequence seq_name;
#创建序列,从1开始
create sequence seq_name start with 1;
  • 删除序列
#删除序列
drop sequence seq_name;
  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小码农qwq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值