当前位置:   article > 正文

Python操作SQLite数据库:轻松管理本地数据_python 管理数据库表信息

python 管理数据库表信息

SQLite是一种轻量级的嵌入式数据库,适用于许多小型项目或移动应用。Python内置了sqlite3模块,使得与SQLite数据库的交互变得非常简便。本篇博客将深入介绍如何使用Python操作SQLite数据库,包括数据库的创建、表的操作、数据的插入和查询等。

1. 连接到SQLite数据库

首先,我们需要通过sqlite3模块连接到SQLite数据库:

import sqlite3

# 连接到SQLite数据库(如果不存在,则会创建)
conn = sqlite3.connect('example.db')
  • 1
  • 2
  • 3
  • 4
'
运行

2. 创建表

接下来,我们可以使用连接对象创建表:

# 创建一个游标对象
cursor = conn.cursor()

# 创建表的SQL语句
create_table_sql = '''
CREATE TABLE IF NOT EXISTS users (
    id INTEGER PRIMARY KEY,
    username TEXT NOT NULL,
    email TEXT NOT NULL
);
'''

# 执行SQL语句
cursor.execute(create_table_sql)

# 提交更改
conn.commit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

3. 插入数据

现在我们有一个名为users的表,接下来我们可以插入一些数据:

# 插入数据的SQL语句
insert_data_sql = '''
INSERT INTO users (username, email) VALUES (?, ?);
'''

# 数据
user_data = [('Alice', 'alice@example.com'), ('Bob', 'bob@example.com')]

# 执行SQL语句
cursor.executemany(insert_data_sql, user_data)

# 提交更改
conn.commit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

4. 查询数据

我们可以使用SELECT语句查询数据:

# 查询数据的SQL语句
select_data_sql = 'SELECT * FROM users;'

# 执行SQL语句
cursor.execute(select_data_sql)

# 获取所有数据
all_users = cursor.fetchall()

# 打印查询结果
for user in all_users:
    print(user)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

5. 更新和删除数据

# 更新数据的SQL语句
update_data_sql = 'UPDATE users SET email=? WHERE username=?;'

# 执行SQL语句
cursor.execute(update_data_sql, ('new_email@example.com', 'Alice'))

# 提交更改
conn.commit()

# 删除数据的SQL语句
delete_data_sql = 'DELETE FROM users WHERE username=?;'

# 执行SQL语句
cursor.execute(delete_data_sql, ('Bob',))

# 提交更改
conn.commit()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

6. 使用上下文管理器

为了确保及时关闭数据库连接,我们可以使用with语句:

with sqlite3.connect('example.db') as conn:
    cursor = conn.cursor()

    # 进行数据库操作
    # ...

# 在离开with块后,连接会自动关闭
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

7. 完整示例

import sqlite3

# 连接到SQLite数据库(如果不存在,则会创建)
with sqlite3.connect('example.db') as conn:
    cursor = conn.cursor()

    # 创建表的SQL语句
    create_table_sql = '''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY,
        username TEXT NOT NULL,
        email TEXT NOT NULL
    );
    '''

    # 执行SQL语句
    cursor.execute(create_table_sql)

    # 插入数据的SQL语句
    insert_data_sql = '''
    INSERT INTO users (username, email) VALUES (?, ?);
    '''

    # 数据
    user_data = [('Alice', 'alice@example.com'), ('Bob', 'bob@example.com')]

    # 执行SQL语句
    cursor.executemany(insert_data_sql, user_data)

    # 提交更改
    conn.commit()

    # 查询数据的SQL语句
    select_data_sql = 'SELECT * FROM users;'

    # 执行SQL语句
    cursor.execute(select_data_sql)

    # 获取所有数据
    all_users = cursor.fetchall()

    # 打印查询结果
    for user in all_users:
        print(user)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
'
运行

结语

通过sqlite3模块,Python提供了一个简单而强大的工具来与SQLite数据库交互。从连接数据库、创建表、插入数据、查询数据到更新和删除数据,本篇博客提供了一个全面的指南,帮助你更好地使用Python进行SQLite数据库的操作。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/891449
推荐阅读
相关标签
  

闽ICP备14008679号