在Python中,可以使用多种方法来删除数据库中的记录。以下是使用SQLite和MySQL数据库的示例。
SQLite
首先,确保已经安装了sqlite3
模块,这是Python的标准库之一,无需额外安装。
假设我们有一个名为students
的表,其中包含id
,name
和age
列,我们想要删除id
为5的记录。
import sqlite3
# 连接到SQLite数据库(如果不存在,则创建一个)
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 删除id为5的记录
delete_query = "DELETE FROM students WHERE id=?"
cursor.execute(delete_query, (5,))
# 提交更改并关闭连接
conn.commit()
conn.close()
MySQL
对于MySQL,我们需要安装mysql-connector-python
库。可以使用以下命令进行安装:
pip install mysql-connector-python
接下来,假设我们有一个名为students
的表,其中包含id
,name
和age
列,我们想要删除id
为5的记录。
import mysql.connector
# 连接到MySQL数据库
conn = mysql.connector.connect(
host='localhost',
user='your_username',
password='your_password',
database='your_database'
)
cursor = conn.cursor()
# 删除id为5的记录
delete_query = "DELETE FROM students WHERE id=%s"
cursor.execute(delete_query, (5,))
# 提交更改并关闭连接
conn.commit()
conn.close()
请注意,在上述示例中,我们使用了参数化查询(?
或%s
)来防止SQL注入攻击。这是一种安全实践,可以确保用户输入不会被解释为SQL代码的一部分。