### MySQL数据库基础知识点总结
#### 数据库概念理解
数据库是一种按照特定格式存储数据的仓库,其目的是为了方便数据的存取操作。在IT领域中,数据库是存储与管理大量数据的关键工具之一,它能有效组织数据,使得数据的检索、更新、管理变得更加便捷。
#### 启动、关闭及登录MySQL
- **启动MySQL服务**:在Windows操作系统中,可以通过命令行(CMD)输入`net start mysql`来启动MySQL服务。
- **关闭MySQL服务**:同样地,在命令行中输入`net stop mysql`即可关闭MySQL服务。
- **登录MySQL**:登录MySQL可以采用以下几种方式:
- 直接登录:`mysql -u 用户名 -p 密码`
- 指定主机地址登录:`mysql -h 主机地址 -u 用户名 -p 密码` 或者 `mysql --host=主机地址 --user=用户名 --password=密码`
#### 使用SQL语句操作数据库
##### DDL(Data Definition Language,数据定义语言)
- **创建数据库**
- 基本格式:`CREATE DATABASE 数据库名;`
- 加判断防止重复创建:`CREATE DATABASE IF NOT EXISTS 数据库名;`
- 创建数据库并指定字符集:`CREATE DATABASE 数据库名 CHARACTER SET 字符集;`
- **查看数据库**
- 查看所有数据库:`SHOW DATABASES;`
- 查看某个数据库的创建语句:`SHOW CREATE DATABASE 数据库名;`
- **修改数据库**
- 修改数据库字符集为UTF-8:`ALTER DATABASE 数据库名 CHARACTER SET utf8;`
- **删除数据库**
- 直接删除:`DROP DATABASE 数据库名;`
- 判断后删除:`DROP DATABASE IF EXISTS 数据库名;`
- **使用数据库**
- 查看当前使用的数据库:`SELECT DATABASE();`
- 切换到指定数据库:`USE 数据库名;`
#### 使用SQL语句操作表结构
##### 表的基本操作
- **创建表**
- 基本格式:`CREATE TABLE 表名 (字段1 类型, 字段2 类型, ...);`
- 常用的数据类型包括:
- `INT` 整型
- `DOUBLE` 浮点型
- `VARCHAR(长度)` 变长字符串类型
- `DATE` 日期类型(格式:YYYY-MM-DD)
- **查看所有表**
- 命令格式:`SHOW TABLES;`
- **查看表结构**
- 命令格式:`DESC 表名;`
- **查看建表语句**
- 命令格式:`SHOW CREATE TABLE 表名;`
- **快速创建表结构**
- 命令格式:`CREATE TABLE 新表名 LIKE 旧表名;`
##### 表结构的修改
- **添加字段**
- 命令格式:`ALTER TABLE 表名 ADD 字段名 类型;`
- **修改字段类型**
- 命令格式:`ALTER TABLE 表名 MODIFY 字段名 新类型;`
- **修改字段名**
- 命令格式:`ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型;`
- **删除字段**
- 命令格式:`ALTER TABLE 表名 DROP 字段名;`
- **修改表名**
- 命令格式:`RENAME TABLE 旧表名 TO 新表名;`
- **修改表字符集**
- 命令格式:`ALTER TABLE 表名 CHARACTER SET 字符集;`
- **删除表**
- 命令格式:`DROP TABLE 表名;`
- 判断后删除:`DROP TABLE IF EXISTS 表名;`
#### 使用SQL语句进行数据的添加、修改和删除的操作
##### DML(Data Manipulation Language,数据操作语言)
- **添加记录**
- 插入全部字段:`INSERT INTO 表名 VALUES (值1, 值2, ...);`
- 指定字段插入:`INSERT INTO 表名 (字段1, 字段2, ...) VALUES (值1, 值2, ...);`
- **蠕虫复制**
- 把已有表的记录快速插入到另一张表中,用于压力测试等场景:
- 先复制表结构:`CREATE TABLE 新表名 LIKE 旧表名;`
- 再复制数据:`INSERT INTO 新表名 SELECT * FROM 旧表名;`
- **修改记录**
- 命令格式:`UPDATE 表名 SET 字段名 = 字段值, 字段名 = 字段值 WHERE 条件;`
- **删除记录**
- 命令格式:`DELETE FROM 表名 WHERE 条件;`
- **清空表数据**
- 命令格式:`TRUNCATE TABLE 表名;`(此命令不保留表结构,仅清除数据)
#### DQL(Data Query Language,数据查询语言)
- **单表简单查询**
- `DISTINCT` 关键字用于去除查询结果中的重复行:`SELECT DISTINCT 字段名1, 字段名2 FROM 表名;`
- `IFNULL()` 函数用于处理查询结果中的NULL值:`SELECT IFNULL(字段名, 定义值) AS 别名 FROM 表名;`
以上总结了MySQL数据库的一些基本操作方法,包括数据库和表的创建、查询、修改以及删除等。掌握这些基本操作对于数据库管理和日常开发工作都是非常重要的。
评论0