数据库基础知识 熟悉
安装 MySQL 数据库 熟悉
SQL 分类 重点
数据库的创建、修改和删除 重点
列类型 重点
数据表的创建、修改和删除 重点
熟悉 MySQL 数据库基础知识
熟练安装 MySQL 数据库
掌握数据库的创建、修改和删除
掌握常用的列类型
掌握数据表的创建、修改和删除
数据库,英文名称为Database,简称DB。从字面意思来看就是存储数据的仓库;从专业角度解释为存储在计算机磁盘上的有组织、可共享的大量数据的集合。
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):事务是一组数据库操作的序列,它们被视为一个单独的操作单元。事务具有原子性、一致性、隔离性和持久性四个特性,可以确保数据库的完整性和一致性。
数据库分为关系型数据库和非关系型数据库两大类。常见的关系型数据库有 MySQL 、 Oracle 、 SQL、Server 、 SQLite 、 DB2 等。常见的非关系型数据库有 Redis 、 MongoDB 等。
数据库管理系统,英文名称为Database Management System,简称DBMS。主要用于科学组织和存储数据、高效的获取和维护数据。
Navicat
MySQL 是目前最流行的开源的、免费的关系型数据库,适用于中小型甚至大型互联网应用,能够在windows 和 linux 平台上部署
MySQL 由MySQL AB公司开发
Oracle 属于Oracle公司
建议初始密码设置为root
找到 MySQL 安装目录下的 bin 目录,然后打开命令窗口,在命令窗口中按如下语法输入命令:
mysql -h MySQL数据库服务器的IP地址 -u 用户名 -p
然后按下回车键,输入密码即可
结构化查询语句,英文名称为Structured Query Language,简称 SQL 。结构化查询语言分为数据定义语言、数据操作语言、数据查询语言和数据控制语言四大类。
Data Definition Language 数据定义语言,在开发时必须保存每一次编写的DDL文件
Data Manipulation Language 数据操纵语言
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;
ALTER DATABASE 数据库名称 CHARACTER SET 字符集 COLLATE 排序规则;
示例:修改数据库lesson的字符集为 UTF8 ,排序规则为 UTF8_GENERAL_CI
ALTER DATABASE lesson CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI;
DROP DATABASE [IF EXISTS] 数据库名称;
示例:删除数据库lesson
DROP DATABASE IF EXISTS lesson;
SHOW DATABASES;
USE 数据库名称;
示例:使用数据库lesson,可以理解为切换当前使用的数据库
USE lesson;
在 MySQL 中,常用列类型主要分为数值类型、日期时间类型、字符串类型。
MySQL 中的数据表类型有许多,如 MyISAM 、 InnoDB 、 HEAP 、 BOB 、 CSV 等。其中最常用的就是MyISAM 和 InnoDB
如何选择表类型?
当涉及的业务操作以查询为主,修改和删除较少的情况下,使用MyISAM。当涉及的业务操作需要经常修改和删除数据时,使用InnoDB。
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='学生表';
修改表名
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;
DROP TABLE [IF EXISTS] 表名;
示例:删除数据表 stu
DROP TABLE IF EXISTS stu;