一、数据库基础概念
1. 数据库的作用
-
核心功能:存储和管理数据的系统,支持数据的增删改查(CURD)。
-
CURD操作:
-
Create:新增数据 -
Update:修改数据 -
Read:查询数据 -
Delete:删除数据
-
2. 数据库分类
|
类型 |
存储形式 |
代表产品 |
|---|---|---|
|
关系型数据库 |
行列表格形式(数据库→数据表) |
MySQL、Oracle、SQL Server |
|
非关系型数据库 |
键值对/文档/列式/图存储 |
MongoDB、Redis、Hbase |
关系型数据库核心:数据以二维表形式存储,通过SQL操作。
二、MySQL基础
1. MySQL特点
-
架构:C/S模式(客户端Client ↔ 服务端Server)
-
优势:
-
全球最流行的开源关系型数据库
-
免费(社区版)、易上手、支持大型数据集(千万级)
-
兼容多种操作系统和编程语言(Python/Java等)
-
2. 连接MySQL服务端
-
连接要素:
-
IP地址:标识网络设备(如127.0.0.1) -
PORT端口:标识程序(默认3306) -
用户名(如
root)、密码
-
-
连接方式:
# 命令行连接 mysql -h[IP] -P[端口] -u[用户名] -p[密码]-
DataGrip连接:
-
新建DataSource → 选择MySQL
-
配置IP、端口、用户名、密码
-
首次需下载驱动 → 测试连接 → 保存
-
-
3. DataGrip使用技巧
-
核心操作:
-
附加文件夹:右键 →
Attach Directory To Project -
SQL文件绑定会话:双击文件 → 顶部选择会话
-
执行SQL:选中语句 →
Ctrl + Enter -
格式化代码:
Ctrl + Alt + L -
注释/取消注释:
Ctrl + /
-
三、SQL语句基础
1. SQL分类
|
类型 |
全称 |
功能 |
关键字 |
|---|---|---|---|
|
DDL |
Data Definition Language |
定义库/表结构 |
|
|
DML |
Data Manipulation Language |
操作表记录(增删改) |
|
|
DQL |
Data Query Language |
查询数据(核心重点) |
|
|
DCL |
Data Control Language |
权限控制 |
|
2. SQL通用语法
-
语句以分号
;结尾 -
关键字不区分大小写(建议大写)
-
注释方式:
-
单行:
--或# -
多行:
/* */
-
-
缩进增强可读性
四、DDL数据定义语言
1. 数据库操作
-- 创建数据库(指定UTF-8编码)
CREATE DATABASE IF NOT EXISTS db_name CHARSET=utf8;
-- 查看所有数据库
SHOW DATABASES;
-- 使用数据库
USE db_name;
-- 删除数据库(慎用!)
DROP DATABASE db_name;
2. 数据表操作
-- 创建表(含字段、数据类型、约束)
CREATE TABLE table_name (
column1 datatype [约束],
column2 datatype [约束],
...
);
-- 查看所有表
SHOW TABLES;
-- 查看表结构
DESC table_name;
-- 修改表名
ALTER TABLE old_name RENAME TO new_name;
-- 删除表
DROP TABLE table_name;
3. 表字段操作
-- 添加字段
ALTER TABLE table_name ADD column_name datatype [约束];
-- 修改字段(重命名/改类型)
ALTER TABLE table_name CHANGE old_name new_name datatype [约束];
-- 删除字段
ALTER TABLE table_name DROP column_name;
4. 数据类型与约束
|
类别 |
常用类型 |
说明 |
|---|---|---|
|
整数 |
|
存储年龄选 |
|
小数 |
|
精确小数(如金额) |
|
字符串 |
|
变长选 |
|
日期时间 |
|
存储日期或时间戳 |
|
约束类型 |
关键字 |
作用 |
|---|---|---|
|
主键 |
|
唯一标识记录,非空且唯一 |
|
非空 |
|
禁止NULL值 |
|
唯一 |
|
值必须唯一(可包含NULL) |
|
默认值 |
|
未填值时自动填充默认值 |
|
自增 |
|
主键自动增长(常与 |
主键自增注意:
INSERT时主键填0或NULL触发自增
DELETE清空表不自增清零,TRUNCATE会清零
五、DML数据操作语言
1. 插入数据
-- 全字段插入
INSERT INTO table_name VALUES (value1, value2, ...);
-- 指定字段插入
INSERT INTO table_name (col1, col2) VALUES (val1, val2);
-- 批量插入
INSERT INTO table_name VALUES (v1,v2), (v3,v4);
2. 更新数据
-- 全表更新(慎用!)
UPDATE table_name SET col1=val1, col2=val2;
-- 条件更新
UPDATE table_name SET col1=val1 WHERE id=1;
3. 删除数据
-- 条件删除
DELETE FROM table_name WHERE id=1;
-- 清空表
DELETE FROM table_name; -- 不自增清零
TRUNCATE TABLE table_name; -- 自增清零
六、核心总结
-
数据库本质:结构化存储管理系统(关系型为核心)。
-
MySQL核心操作:
-
建库建表 → 定义存储结构
-
增删改查 → 操作数据记录
-
-
约束关键点:
-
主键 = 唯一标识 + 非空
-
自增主键用
AUTO_INCREMENT -
非空约束确保数据完整性
-
-
工具链:
-
DataGrip高效管理(连接/执行/格式化)
-
SQL语法标准化(注意分号结尾)
-
958

被折叠的 条评论
为什么被折叠?



