【进阶】SQLite数据库的基本操作
发布时间: 2024-06-27 17:04:35 阅读量: 60 订阅数: 92
![【进阶】SQLite数据库的基本操作](https://img-blog.csdnimg.cn/b66169e054604f6eb461448ae8af8bc7.png)
# 2.1 数据库的创建和连接
SQLite 数据库的创建和连接非常简单。首先,需要创建一个数据库文件。如果数据库文件不存在,SQLite 会自动创建它。可以使用以下代码来创建数据库文件:
```python
import sqlite3
# 创建一个数据库连接
conn = sqlite3.connect('mydatabase.db')
# 创建一个游标
c = conn.cursor()
```
创建数据库连接后,就可以使用游标来执行 SQL 命令。游标是一个对象,它允许你与数据库交互。可以使用 `execute()` 方法来执行 SQL 命令,并使用 `fetchall()` 方法来获取查询结果。
```python
# 创建一个表
c.execute('''CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, email TEXT)''')
# 插入数据
c.execute("INSERT INTO users (name, email) VALUES ('John', 'john@example.com')")
# 提交更改
conn.commit()
```
# 2. SQLite数据库操作基础
### 2.1 数据库的创建和连接
**创建数据库**
```sql
CREATE DATABASE database_name;
```
**连接数据库**
```sql
CONNECT TO database_name;
```
**参数说明:**
- `database_name`:要创建或连接的数据库名称。
**代码逻辑:**
1. `CREATE DATABASE` 语句用于创建一个新的数据库。如果数据库已存在,则会返回一个错误。
2. `CONNECT TO` 语句用于连接到一个现有的数据库。如果数据库不存在,则会返回一个错误。
### 2.2 表的创建和操作
**创建表**
```sql
CREATE TABLE table_name (
column_name1 data_type1,
column_name2 data_type2,
...
);
```
**参数说明:**
- `table_name`:要创建的表名称。
- `column_name`:表的列名称。
- `data_type`:列的数据类型(例如,`INTEGER`、`TEXT`、`REAL`)。
**代码逻辑:**
1. `CREATE TABLE` 语句用于创建一个新的表。如果表已存在,则会返回一个错误。
2. 列定义由列名和数据类型组成。
3. 多个列定义用逗号分隔。
**操作表**
| 操作 | 语法 | 描述 |
|---|---|---|
| 重命名表 | `ALTER TABLE table_name RENAME TO new_table_name;` | 将表重命名为 `new_table_name`。 |
| 添加列 | `ALTER TABLE table_name ADD COLUMN new_column_name data_type;` | 在表中添加一个新列。 |
| 删除列 | `ALTER TABLE table_name DROP COLUMN column_name;` | 从表中删除一个列。 |
**代码逻辑:**
1. `ALTER TABLE` 语句用于修改表的结构。
2. `RENAME TO` 子句用于重命名表。
3. `ADD COLUMN` 子句用于添加一个新列。
4. `DROP COLUMN` 子句用于删除一个列。
### 2.3 数据的插入、查询和更新
**插入数据**
```sql
INSERT INTO table_name (column_name1, column_name2, ...) VALUES (value1, value2, ...);
```
**参数说明:**
- `table_name`:要插入数据的表名称。
- `column_name`:要插入数据的列名称。
- `value`:要插入的值。
**代码逻辑:**
1. `INSERT INTO` 语句用于向表中插入一条或多条数据。
2. 列名和值用括号括起来。
3. 多个值用逗号分隔。
**查询数据**
```sql
SELECT column_name1, column_name2, ... FROM table_name WHERE condition;
```
**参数说明:**
- `column_name`:要查询的列名称。
- `table_name`:要查询的表名称。
- `condition`:查询条件(可选)。
**代码逻辑:**
1. `SELECT` 语句用于从表中查询数据。
2. 列名用逗号分隔。
3. `WH
0
0