很久没来过了

博主表示自从将家搬到 http://spaces.msn.com/members/liangbowen/ 后,就不再访问原地址。
没关系!数据库是编程中非常重要的一个领域,即使你很久没接触了,只要重新梳理一下核心概念,很快就能上手。我们从最基础、最关键的点开始讲起,并通过代码帮助你理解。 --- ### 什么是数据库? 简单来说,**数据库(Database)** 就是用来存储数据的仓库,它以结构化的方式组织数据,方便我们进行增删改查操作。最常见的数据库类型是 **关系型数据库(Relational Database)**,比如: - MySQL - PostgreSQL - SQLite - Oracle - SQL Server 它们都使用 **SQL(Structured Query Language)** 来操作数据。 --- ### 核心概念回顾 1. **表(Table)**:就像 Excel 表格一样,有行和列。 - 列(字段/Field):如 `id`, `name`, `age` - 行(记录/Record):一条具体的数据 2. **主键(Primary Key)**:唯一标识一条记录,通常是 `id` 3. **SQL 操作四大类**: - **SELECT**:查询 - **INSERT**:插入 - **UPDATE**:更新 - **DELETE**:删除 --- ### 示例:用 SQLite 演示一个完整的流程 SQLite 是一个轻量级数据库,Python 内置支持,非常适合学习。 #### ✅ 创建数据库和表,并进行增删改查 ```python import sqlite3 # 连接到数据库(如果不存在会自动创建) conn = sqlite3.connect('student.db') cursor = conn.cursor() # 创建一张学生表 cursor.execute(''' CREATE TABLE IF NOT EXISTS students ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, age INTEGER, grade REAL ) ''') # 插入数据(INSERT) cursor.execute("INSERT INTO students (name, age, grade) VALUES (?, ?, ?)", ("张三", 20, 85.5)) cursor.execute("INSERT INTO students (name, age, grade) VALUES (?, ?, ?)", ("李四", 22, 90.0)) # 提交事务 conn.commit() # 查询所有数据(SELECT) cursor.execute("SELECT * FROM students") print("所有学生:") for row in cursor.fetchall(): print(row) # 更新数据(UPDATE) cursor.execute("UPDATE students SET grade = ? WHERE name = ?", (95.0, "张三")) conn.commit() # 再次查询看变化 cursor.execute("SELECT * FROM students WHERE name = '张三'") print("更新后的张三:", cursor.fetchone()) # 删除数据(DELETE) cursor.execute("DELETE FROM students WHERE name = ?", ("李四",)) conn.commit() # 最终结果 cursor.execute("SELECT * FROM students") print("最终数据:", cursor.fetchall()) # 关闭连接 conn.close() ``` --- ### 代码解释 | 代码段 | 说明 | |-------|------| | `sqlite3.connect('student.db')` | 连接或创建名为 `student.db` 的数据库文件 | | `CREATE TABLE IF NOT EXISTS ...` | 创建表,避免重复创建 | | `INTEGER PRIMARY KEY AUTOINCREMENT` | 主键自动递增 | | `VALUES (?, ?, ?)` | 使用占位符防止 SQL 注入,安全! | | `conn.commit()` | 提交更改,否则不会保存 | | `cursor.fetchall()` | 获取所有查询结果 | | `cursor.fetchone()` | 获取一条结果 | --- ### 常见 SQL 语句对照表(建议记住) | 操作 | SQL 语句 | |------|---------| | 查全部 | `SELECT * FROM students;` | | 查某个字段 | `SELECT name, age FROM students;` | | 条件查询 | `SELECT * FROM students WHERE age > 20;` | | 插入 | `INSERT INTO students (name, age) VALUES ('王五', 19);` | | 修改 | `UPDATE students SET age = 21 WHERE name = '张三';` | | 删除 | `DELETE FROM students WHERE name = '李四';` | --- ### 小结 你现在不需要一下子掌握所有内容,关键是理解: - 数据库是用来存数据的 - 表像表格,有行有列 - SQL 是操作数据库的语言 - Python 可以通过 `sqlite3` 轻松操作数据库 你可以先运行上面的代码,看看输出结果,然后尝试自己修改名字、年龄,再执行查询,慢慢就有感觉了! ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值