初识MySQL

章节内容

数据库基础知识 熟悉

安装 MySQL 数据库 熟悉

SQL 分类 重点

数据库的创建、修改和删除 重点

列类型 重点

数据表的创建、修改和删除 重点

章节目标

熟悉 MySQL 数据库基础知识

熟练安装 MySQL 数据库

掌握数据库的创建、修改和删除

掌握常用的列类型

掌握数据表的创建、修改和删除

第一节 数据库基础知识

1. 数据库

1.1 概念

数据库,英文名称为Database,简称DB。从字面意思来看就是存储数据的仓库;从专业角度解释为存储在计算机磁盘上的有组织、可共享的大量数据的集合。

初识MySQL_第1张图片

MySQL是一种关系型数据库管理系统(RDBMS),它是用于管理和存储数据的软件。MySQL使用结构化查询语言(SQL)来操作和查询数据库。

1. 数据库(Database):数据库是一个存储数据的容器,它可以包含多个表和其他相关对象。

2. 表(Table):表是数据库中的一个组织数据的结构,它由行和列组成。每一列代表一个属性,每一行代表一个记录。

3. 字段(Field):字段是表中的列,它定义了表中的每一项数据的类型和属性。

4. 记录(Record):记录是表中的行,每一行包含了一组相关的数据。

5. 主键(Primary Key):主键是表中的一个或多个字段,它用于唯一标识表中的每一条记录。主键可以保证数据的唯一性,并用于建立表之间的关系。

6. 外键(Foreign Key):外键是表中的一个字段,它与另一个表的主键相关联,用于建立表之间的关系。

7. 索引(Index):索引是用于加快数据库查询速度的数据结构,它通过创建一个快速访问的路径来提高查询的性能。

8. 查询(Query):查询是以SQL语句的形式向数据库发送的请求,用于检索、插入、更新或删除数据。

9. 视图(View):视图是一个虚拟的表,它是基于一个或多个表的查询结果创建的。视图可以简化复杂的查询,并提供了一种安全的方式来访问数据。

10. 事务(Transaction):事务是一组数据库操作的序列,它们被视为一个单独的操作单元。事务具有原子性、一致性、隔离性和持久性四个特性,可以确保数据库的完整性和一致性。

1.2 数据库的类型

数据库分为关系型数据库和非关系型数据库两大类。常见的关系型数据库有 MySQL 、 Oracle 、 SQL、Server 、 SQLite 、 DB2 等。常见的非关系型数据库有 Redis 、 MongoDB 等。

1.3 数据库管理系统

数据库管理系统,英文名称为Database Management System,简称DBMS。主要用于科学组织和存储数据、高效的获取和维护数据。

Navicat

2. MySQL 介绍和安装

2.1 MySQL 介绍

MySQL 是目前最流行的开源的、免费的关系型数据库,适用于中小型甚至大型互联网应用,能够在windows 和 linux 平台上部署

MySQL 由MySQL AB公司开发

Oracle 属于Oracle公司

2.2 MySQL 安装

建议初始密码设置为root

2.3 连接数据库

找到 MySQL 安装目录下的 bin 目录,然后打开命令窗口,在命令窗口中按如下语法输入命令:

mysql -h MySQL数据库服务器的IP地址 -u 用户名 -p

然后按下回车键,输入密码即可

第二节 结构化查询语言

1. SQL 分类

结构化查询语句,英文名称为Structured Query Language,简称 SQL 。结构化查询语言分为数据定义语言、数据操作语言、数据查询语言和数据控制语言四大类。

Data Definition Language 数据定义语言,在开发时必须保存每一次编写的DDL文件

Data Manipulation Language 数据操纵语言

初识MySQL_第2张图片

2. 数据库操作

2.1 创建数据库的语法

CREATE DATABASE [IF NOT EXISTS] 数据库名称 DEFAULT CHARACTER SET 字符集 COLLATE 排序规则;

示例:创建数据库lesson,并指定字符集为 GBK ,排序规则为 GBK_CHINESE_CI

CREATE DATABASE IF NOT EXISTS lesson DEFAULT CHARACTER SET GBK COLLATE GBK_CHINESE_CI;

2.2 修改数据库的语法

ALTER DATABASE 数据库名称 CHARACTER SET 字符集 COLLATE 排序规则;

示例:修改数据库lesson的字符集为 UTF8 ,排序规则为 UTF8_GENERAL_CI

ALTER DATABASE lesson CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;

2.3 删除数据库的语法

DROP DATABASE [IF EXISTS] 数据库名称;

示例:删除数据库lesson

DROP DATABASE IF EXISTS lesson;

2.4 查看数据库语法

SHOW DATABASES;

2.5 使用数据库的语法

USE 数据库名称;

示例:使用数据库lesson,可以理解为切换当前使用的数据库

USE lesson;

3. 列类型

在 MySQL 中,常用列类型主要分为数值类型、日期时间类型、字符串类型。

3.1 数值类型

初识MySQL_第3张图片

3.2 日期时间类型

初识MySQL_第4张图片

3.3 字符串类型

初识MySQL_第5张图片

3.4 列类型修饰属性

初识MySQL_第6张图片

4. 数据表操作

4.1 数据表类型

MySQL 中的数据表类型有许多,如 MyISAM 、 InnoDB 、 HEAP 、 BOB 、 CSV 等。其中最常用的就是MyISAM 和 InnoDB

4.2 MyISAM InnoDB 的区别

初识MySQL_第7张图片

如何选择表类型?

当涉及的业务操作以查询为主,修改和删除较少的情况下,使用MyISAM。当涉及的业务操作需要经常修改和删除数据时,使用InnoDB。

4.3 创建数据表

CREATE TABLE [IF NOT EXISTS] 数据表名称(

字段名1 列类型(长度) [修饰属性] [键/索引] [注释],

字段名2 列类型(长度) [修饰属性] [键/索引] [注释],

字段名3 列类型(长度) [修饰属性] [键/索引] [注释],

......

字段名n 列类型(长度) [修饰属性] [键/索引] [注释]

) ENGINE = 数据表类型 [COMMENT=注释];

示例:创建学生表,表中有字段学号、姓名、性别、年龄和成绩

CREATE TABLE IF NOT EXISTS student(

num INT(11) COMMENT '学号',

name VARCHAR(30) COMMENT '姓名',

sex TINYINT(1) COMMENT '性别:0-男,1-女,2-其他',

age TINYINT(3) UNSIGNED DEFAULT 0 COMMENT '年龄',

score DOUBLE(5, 2) COMMENT '成绩'

)ENGINE=InnoDB CHARSET=UTF8 COMMENT='学生表';

4.4 修改数据表

修改表名

ALTER TABLE 表名 RENAME AS 新表名;

示例:将student表名称修改为 stu

ALTER TABLE student RENAME AS stu;

增加字段

ALTER TABLE 表名 ADD 字段名 列类型(长度) [修饰属性] [键/索引] [注释];

示例:在 stu 表中添加字段联系电话(phone),类型为字符串,长度为11,非空

ALTER TABLE stu ADD phone VARCHAR(11) NOT NULL COMMENT '联系电话';

修改字段

ALTER TABLE 表名 MODIFY 字段名 列类型(长度) [修饰属性] [键/索引] [注释];

ALTER TABLE 表名 CHANGE 字段名 新字段名 列类型(长度) [修饰属性] [键/索引] [注释];

示例: 将 stu 表中的 sex 字段的类型设置为 TINYINT ,长度为1,默认值为0,注释为 "性别,0-

男,1-女,2-其他"

ALTER TABLE stu MODIFY sex TINYINT(1) DEFAULT 0 COMMENT '性别:0-男,1-女,2-其他';

示例:将 stu 表中 phone 字段修改为 mobile ,属性保持不变

ALTER TABLE stu CHANGE phone mobile VARCHAR(11) NOT NULL COMMENT '联系电话';

删除字段

ALTER TABLE 表名 DROP 字段名;

示例:将 stu 表中的 mobile 字段删除

ALTER TABLE stu DROP mobile;

4.5 删除数据表

DROP TABLE [IF EXISTS] 表名;

示例:删除数据表 stu

DROP TABLE IF EXISTS stu;

你可能感兴趣的:(MYSQL,mysql,数据库)