数据库课堂笔记

1. 为什么要使用数据库

数据持久化 — 将数据从内存转移到硬盘(长久保存数据的存储介质)

数据库(database) — 存储数据,管理数据

2. 数据库的类型

关系(型)数据库 / 非关系型数据库

2.1 非关系型数据库:

(1)KV数据库

(2)文档数据库

(3)列族数据库

(4)图数据库

2.2 关系数据库的特点

  1. 理论基础:关系模型 — 关系代数 — 关系运算 — 谓词逻辑

  2. 具体表象:用二维表组织数据

    行(row)— 记录(record)— 元组(tuple)

    列(column)— 字段(field)— 属性(attribute)

    主键(primary key)

    外键(foreign key)

  3. 编程语言:SQL - Structured Query Language - 结构化查询语言

3. 关系数据库产品

Oracle / MySQL / DB2 / SQLServer / PostgreSQL / MariaDB

MySQL:
reliable / mature / open-source
中小型网站开发的黄金组合 - LAMP = Linux + Apache + MySQL + PHP

4. MySQL命令行

显示所有数据库:show databases;

显示数据库下所有表:show tables;

显示所有的字符集:show charset;

5. 结构化查询语言(SQL)

DDL — Data Definition Language — 数据定义语言 — create / drop / alter

Unicode —> utf-8 / utf-16 / utf-32
‘a’ —> 1字节
‘骆’ —> 3字节
‘’ —> emoji —> 4字节

utf8mb4 - 最大4字节的utf-8编码 - MySQL8默认

– 如果存在名为school的数据库就删除它
drop database if exists school;

– 创建名为school的数据库并指定默认的字符集
create database school default charset utf8mb4;

– 切换数据库
use school;

– 创建二维表
create table tb_student
(
stu_id integer not null comment ‘学号’,
stu_name varchar(20) not null comment ‘姓名’,
stu_gender boolean not null default 1 comment ‘性别’,
stu_birth date default ‘2000-1-1’ comment ‘出生日期’,
primary key (stu_id)
) engine=innodb comment ‘学生表’;

– 删除表
drop table if exists tb_student;

– 修改表添加列
alter table tb_student add column stu_addr varchar(200) default ‘’ comment ‘家庭住址’;
alter table tb_student add column stu_tel varchar(20) not null comment ‘联系电话’;

– 修改表删除列
alter table tb_student drop column stu_tel;

– 修改表修改列
alter table tb_student modify column stu_gender char(1) default ‘男’ comment ‘性别’;
alter table tb_student change column stu_gender stu_sex char(1) not null default ‘M’ comment ‘性别’;

6. 数据类型

6.1 寻求帮助:

help data types; / ? data types;

6.2 数据类型
  1. 整数

    bigint(64bit —> 8byte —> -2^63 ~ 2^63-1)—> bigint unsigned(0 ~ 2^64-1)
    teger / int (32bit —> 4byte —> -2^31 ~ 2^31-1)—> int unsigned(0 ~ 2^32-1)

  2. 小数
    float / double —> 不推荐使用
    decimal —> decimal(10, 2)

  3. 字符串 —> 底层都是边长编码
    smallint(16bit —> 2byte —> -32768 ~ 32767)—> smallint unsigned
    tinyint (8bit —> 1byte —> -128 ~ 127) —> tinyint unsigned

  4. char
    varchar —> varchar(20) —> 65535 / 16383
    longtext / longblob —> 4G —> 不推荐使用 —> 用字符串保存文件路径即可

  5. 日期时间
    date
    time
    datetime
    timestamp —> 不推荐使用 —> 底层是一个整数 —> 2038年1月19日3时14分07秒

  6. JSON
    json数组
    json对象

7. 高级文本编辑工具

Visual Studio Code

Sublime

Atom

Textmate

Notepad++

Editplus

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Oracle 19c OCP全程课堂笔记是一份详细记录Oracle数据库19c版本OCP培训课程内容的笔记。这个课程旨在为数据库管理员和开发人员提供深入的Oracle数据库知识,并帮助他们准备并通过Oracle Certified Professional (OCP)认证考试。 课程的第一部分主要介绍了Oracle数据库的概述,包括数据库的基本概念、架构和体系结构。学员学习了如何安装和配置Oracle数据库19c,并了解了数据库实例、表空间、数据文件等关键组件。 在第二部分中,学员学习了如何管理数据库对象,包括表、索引、视图和存储过程。他们还学习了如何使用Oracle数据字典来查询和管理数据库元数据。 第三部分重点讲解了Oracle数据库的性能优化和故障排除。学员学习了如何监视和调整数据库性能,并学习了使用工具和技术来解决常见的数据库问题。 在第四部分中,学员学习了如何备份和恢复Oracle数据库。他们了解了不同类型的备份和恢复策略,并学习了如何使用RMAN工具执行备份和恢复操作。 第五部分介绍了Oracle高可用性和数据保护解决方案。学员学习了如何配置和管理数据保护功能,如数据镜像、数据卷和故障转移。 最后,课程结束前,学员进行了一系列实践实验和案例研究,以加深对所学知识的理解和应用。 通过参加Oracle 19c OCP全程课堂,学员可以全面了解Oracle数据库的各个方面,并为OCP认证考试做好充分准备。这些课堂笔记提供了课程内容的详细记录,学员们可以通过复习这些笔记来巩固所学知识并进行复习,以便在考试中取得成功。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值