Python 数据的操作

class SQLite,MySQL,PostgreSQL,Python

Python 可以通过多种方式与数据库进行交互,常见的数据库包括 SQLite、MySQL 和 PostgreSQL。下面我将介绍如何使用 Python 连接和操作这三种数据库。

1. 使用 SQLite 进行数据库操作

SQLite 是一个轻量级的嵌入式数据库,通常用于小型项目或原型开发。Python 内置了对 SQLite 的支持,无需额外安装库。

1.1 连接 SQLite 数据库

import sqlite3

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

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

1.2 创建表

cursor.execute('''
CREATE TABLE users (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT NOT NULL,
    email TEXT UNIQUE NOT NULL
)
''')

1.3 插入数据

cursor.execute('''
INSERT INTO users (name, email) VALUES (?, ?)
''', ('John Doe', 'john.doe@example.com'))

# 提交事务
conn.commit()

1.4 查询数据

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()

for row in rows:
    print(row)

1.5 更新数据

cursor.execute('''
UPDATE users SET name = ? WHERE id = ?
''', ('Jane Doe', 1))

conn.commit()

1.6 删除数据

cursor.execute('DELETE FROM users WHERE id = ?', (1,))
conn.commit()

1.7 关闭连接

conn.close()

2. 使用 MySQL 进行数据库操作

MySQL 是一个常用的开源关系型数据库管理系统。要在 Python 中操作 MySQL,你需要安装 mysql-connector-pythonPyMySQL

2.1 安装 MySQL 连接器

pip install mysql-connector-python

2.2 连接 MySQL 数据库

import mysql.connector

conn = mysql.connector.connect(
    host='localhost',
    user='yourusername',
    password='yourpassword',
    database='testdb'
)

cursor = conn.cursor()

2.3 创建表

cursor.execute('''
CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100) UNIQUE
)
''')

2.4 插入数据

cursor.execute('''
INSERT INTO users (name, email) VALUES (%s, %s)
''', ('John Doe', 'john.doe@example.com'))

conn.commit()

2.5 查询数据

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()

for row in rows:
    print(row)

2.6 更新数据

cursor.execute('''
UPDATE users SET name = %s WHERE id = %s
''', ('Jane Doe', 1))

conn.commit()

2.7 删除数据

cursor.execute('DELETE FROM users WHERE id = %s', (1,))
conn.commit()

2.8 关闭连接

conn.close()

3. 使用 PostgreSQL 进行数据库操作

PostgreSQL 是一个强大的开源对象关系数据库系统。要在 Python 中操作 PostgreSQL,你需要安装 psycopg2asyncpg(用于异步操作)。

3.1 安装 PostgreSQL 连接器

pip install psycopg2

3.2 连接 PostgreSQL 数据库

import psycopg2

conn = psycopg2.connect(
    host='localhost',
    database='testdb',
    user='yourusername',
    password='yourpassword'
)

cursor = conn.cursor()

3.3 创建表

cursor.execute('''
CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100) UNIQUE
)
''')
conn.commit()

3.4 插入数据

cursor.execute('''
INSERT INTO users (name, email) VALUES (%s, %s)
''', ('John Doe', 'john.doe@example.com'))

conn.commit()

3.5 查询数据

cursor.execute('SELECT * FROM users')
rows = cursor.fetchall()

for row in rows:
    print(row)

3.6 更新数据

cursor.execute('''
UPDATE users SET name = %s WHERE id = %s
''', ('Jane Doe', 1))

conn.commit()

3.7 删除数据

cursor.execute('DELETE FROM users WHERE id = %s', (1,))
conn.commit()

3.8 关闭连接

conn.close()

总结

无论是使用 SQLite、MySQL 还是 PostgreSQL,Python 都提供了简便的库来连接和操作数据库。SQLite 是轻量级的,适合小型项目;MySQL 和 PostgreSQL 则适合需要更高性能和扩展性的项目。选择具体的数据库取决于项目的需求和环境。

评论区
评论列表
menu