让一个完全没有数据库基础的人快速认识 SQL 数据库结构,可以采取以下方法:
1. 类比生活场景
• 数据库(Database):相当于一个 文件柜,里面存放着很多 文件夹(表)。
• 表(Table):就像 Excel 里的一个工作表,每一行是一条数据,每一列是某个属性。
• 字段(Column):相当于 Excel 里的 列,每一列代表数据的某个特性(如“姓名”、“年龄”)。
• 行(Row):相当于 Excel 里的 行,每一行是一条完整的记录(比如某个学生的所有信息)。
• 主键(Primary Key):类似于身份证号,保证每个人唯一可识别。
• 外键(Foreign Key):类似于学生的班级编号,用来连接不同的表。
2. 用简单的表结构举例
假设是一个管理学生信息的数据库,有两个表:
① 学生表(students)
id(主键) | name | age | class_id(外键) |
---|---|---|---|
1 | 小明 | 10 | 101 |
2 | 小红 | 11 | 102 |
3 | 小刚 | 10 | 101 |
② 班级表(classes)
class_id(主键) | class_name |
---|---|
101 | 三年级一班 |
102 | 三年级二班 |
🔹 连接两个表的方法:
SELECT students.name, classes.class_name
FROM students
JOIN classes ON students.class_id = classes.class_id;
📌 结果:
name | class_name |
---|---|
小明 | 三年级一班 |
小红 | 三年级二班 |
小刚 | 三年级一班 |
3. 手把手操作:用 SQLite 进行体验
如果对方连 SQL 都没接触过,推荐 SQLite,因为它简单易上手:
1. 下载 SQLite(或者使用在线 SQL 练习平台 https://sqliteonline.com/)
2. 执行以下 SQL 代码,创建表并插入数据:
CREATE TABLE students (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER,
class_id INTEGER
);
CREATE TABLE classes (
class_id INTEGER PRIMARY KEY,
class_name TEXT
);
INSERT INTO students VALUES (1, '小明', 10, 101);
INSERT INTO students VALUES (2, '小红', 11, 102);
INSERT INTO students VALUES (3, '小刚', 10, 101);
INSERT INTO classes VALUES (101, '三年级一班');
INSERT INTO classes VALUES (102, '三年级二班');
3. 让对方执行查询,看到数据:
SELECT * FROM students;
SELECT * FROM classes;
4. 引导理解 SQL 语句
• 增(INSERT):
INSERT INTO students (id, name, age, class_id) VALUES (4, '小美', 9, 102);
• 查(SELECT):
SELECT * FROM students WHERE age = 10;
• 改(UPDATE):
UPDATE students SET age = 12 WHERE name = '小红';
• 删(DELETE):
DELETE FROM students WHERE id = 3;
5. 总结
• 数据库 就是存数据的地方,就像 Excel 表格。
• 表 就是 Excel 的一个 Sheet,里面有行和列。
• SQL 语言 用来操作数据库,比如:
• SELECT 查询
• INSERT 插入
• UPDATE 修改
• DELETE 删除
如果对方能 跟着做一遍 SQLite 练习,基本就能建立 SQL 数据库的基础概念了!🚀