如何在Python中使用MySQL删除表格中的记录?
在某些情况下,我们可能需要从表格中删除某些记录。假设我们有一个班级学生详细信息的表格,其中可能有一名学生退学了,因此我们不需要该特定学生的详细信息。因此,我们需要从表格中删除该行或记录。
在MySQL中,“DELETE FROM”语句用于从表格中删除行或记录,“WHERE”子句用于指定要删除的行。如果不使用WHERE子句,则将删除所有记录。
更多Python相关文章,请阅读:Python 教程
语法
删除所有行 -
DELETE FROM table_name
删除特定行 -
DELETE FROM table_name WHERE condition
使用Python在MySQL中删除表格记录的步骤
- 导入MySQL connector
-
使用connect()方法与连接器建立连接
-
使用cursor()方法创建游标对象
-
使用适当的MySQL语句创建查询语句
-
使用execute()方法执行SQL查询
-
使用commit()方法提交所做的更改
-
关闭连接
假设我们有一个名为“Student”的表格,如下所示 –
+----------+---------+-----------+------------+
| Name | Class | City | Marks |
+----------+---------+-----------+------------+
| Karan | 4 | Amritsar | 95 |
| Sahil | 6 | Amritsar | 93 |
| Kriti | 3 | Batala | 88 |
| Khushi | 9 | Delhi | 90 |
| Kirat | 5 | Delhi | 85 |
+----------+---------+-----------+------------+
示例
假设,我们有上述学生表格,我们想从该表格中删除Kriti的记录。
import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")
cursor=db.cursor()
query="DELETE FROM Students WHERE Name='Kriti'"
cursor.execute(query)
db.commit()
query="SELECT * FROM Students"
cursor.execute(query)
for row in cursor:
print(row)
db.close()
上述代码从表格中删除一行,并打印表格余下的行。
输出
(‘Karan’, 4 ,’Amritsar’ , 95)
(‘Sahil’ , 6, ‘Amritsar’ ,93)
(‘Amit’ , 9, ‘Delhi’ , 90)
(‘Priya’ , 5, ‘Delhi’ ,85)
注意
上述代码中的 db.commit() 很重要。 它用于提交对表格所做的更改。 没有使用commit(),表格将不会进行任何更改。
极客教程