大家好,我是阿萨。今天学习数据库操作。
了解SQL语句和使用Python进行数据库操作是一个非常实用的技能。以下是一些常见的SQL语句和使用Python进行数据库操作的例子。
一:常见的SQL语句
1. 创建表
创建一个名为`students`的表,包含`id`, `name`, `age`和`score`字段:
````sql CREATE TABLE students ( id INT PRIMARY KEY, name VARCHAR(50), age INT, score FLOAT ); ```
2. 插入数据
向`students`表中插入一条记录:
````sql INSERT INTO students (id, name, age, score) VALUES (1, '张三', 20, 90.0); ```
3. 查询数据
查询`students`表中的所有记录:
````sql SELECT * FROM students; ``` 查询`students`表中年龄大于等于18的学生: ````sql SELECT * FROM students WHERE age >= 18; ```
4. 更新数据
更新`students`表中`id`为1的学生的分数:
````sql UPDATE students SET score = 95.0 WHERE id = 1; ```
5. 删除数据
删除`students`表中`id`为1的学生:
````sql DELETE FROM students WHERE id = 1; ```
6. 排序
查询`students`表中的所有记录,按照分数降序排列:
````sql SELECT * FROM students ORDER BY score DESC; ```
二:使用Python进行数据库操作
这里以操作SQLite数据库为例,介绍如何使用Python的`sqlite3`库来进行数据库操作。
```python import sqlite3 # 连接到数据库文件 conn = sqlite3.connect('example.db') # 创建一个游标对象 c = conn.cursor() # 执行SQL语句 c.execute(""" CREATE TABLE students ( id INT PRIMARY KEY, name TEXT, age INT, score REAL ) """) # 插入数据 c.execute("INSERT INTO students (id, name, age, score) VALUES (?, ?, ?, ?)", (1, '张三', 20, 90.0)) # 查询数据 c.execute("SELECT * FROM students") rows = c.fetchall() for row in rows: print(row) # 更新数据 c.execute("UPDATE students SET score = ? WHERE id = ?", (95.0, 1)) # 删除数据 c.execute("DELETE FROM students WHERE id = ?", (1,)) # 提交事务 conn.commit() # 关闭连接 conn.close() ```
请注意,实际操作数据库时应当使用参数化查询来防止SQL注入攻击,例如上述代码中的插入、更新和删除操作。
来阿萨的小册子,一起成长。30天速成已经过去11天了。