温馨提示×

Debian Python数据库连接怎样写

小樊
50
2025-07-20 06:20:08
栏目: 编程语言

在Debian系统上使用Python连接数据库,通常会选择sqlite3(对于SQLite数据库)或pymysql/psycopg2(对于MySQL/MariaDB和PostgreSQL数据库)。以下是使用这些库连接数据库的基本示例。

SQLite3 示例

import sqlite3

# 连接到SQLite数据库
conn = sqlite3.connect('example.db')

# 创建一个Cursor对象使用Cursor()方法
cursor = conn.cursor()

# 执行SQL查询
cursor.execute('''CREATE TABLE IF NOT EXISTS stocks
                 (date text, trans text, symbol text, qty real, price real)''')

# 插入一行数据
cursor.execute("INSERT INTO stocks VALUES ('2023-04-01','BUY','RHAT',100,35.14)")

# 提交事务
conn.commit()

# 查询数据
cursor.execute('SELECT * FROM stocks')
for row in cursor.fetchall():
    print(row)

# 关闭Cursor和连接
cursor.close()
conn.close()

PyMySQL 示例(用于MySQL/MariaDB)

首先,你需要安装pymysql库:

pip install pymysql

然后,你可以使用以下代码连接到MySQL/MariaDB数据库:

import pymysql

# 连接到数据库
conn = pymysql.connect(host='localhost',
                       user='your_username',
                       password='your_password',
                       db='your_database')

# 创建一个Cursor对象使用Cursor()方法
cursor = conn.cursor()

# 执行SQL查询
cursor.execute('SELECT * FROM your_table')

# 获取单条数据
result = cursor.fetchone()
print(result)

# 获取多条数据
results = cursor.fetchall()
for result in results:
    print(result)

# 插入数据
sql = "INSERT INTO `your_table` (`column1`, `column2`) VALUES (%s, %s)"
cursor.execute(sql, ('value1', 'value2'))

# 提交到数据库执行
conn.commit()

# 关闭Cursor和连接
cursor.close()
conn.close()

psycopg2 示例(用于PostgreSQL)

首先,你需要安装psycopg2库:

pip install psycopg2-binary

然后,你可以使用以下代码连接到PostgreSQL数据库:

import psycopg2

# 连接到数据库
conn = psycopg2.connect(
    dbname="your_database",
    user="your_username",
    password="your_password",
    host="localhost"
)

# 创建一个Cursor对象使用Cursor()方法
cursor = conn.cursor()

# 执行SQL查询
cursor.execute('SELECT * FROM your_table')

# 获取单条数据
record = cursor.fetchone()
print(record)

# 获取多条数据
records = cursor.fetchall()
for record in records:
    print(record)

# 插入数据
cursor.execute("INSERT INTO your_table (column1, column2) VALUES (%s, %s)", ('value1', 'value2'))

# 提交到数据库执行
conn.commit()

# 关闭Cursor和连接
cursor.close()
conn.close()

请根据你的实际数据库类型和配置替换上述代码中的your_username, your_password, your_database, your_table, column1, column2, value1, value2等占位符。

0