บางครั้งต้องลบแถวเฉพาะจากตาราง เช่น นักเรียนย้ายออก ไม่ต้องการข้อมูลคนนั้นอีก ใช้คำสั่ง DELETE FROM
WHERE clause ระบุแถวที่จะลบ หากไม่ใช้ WHERE จะลบทุกแถว
ไวยากรณ์
ลบทุกแถว
DELETE FROM table_name
ลบแถวเฉพาะ
DELETE FROM table_name WHERE condition
ขั้นตอนลบเรคคอร์ดจากตารางด้วย MySQL ใน Python
นำเข้า MySQL Connector
สร้างการเชื่อมต่อด้วย
connect()สร้างออบเจ็กต์ cursor ด้วย
cursor()สร้างคำสั่ง SQL ที่เหมาะสม
รันคำสั่งด้วย
execute()commit การเปลี่ยนแปลงด้วย
commit()ปิดการเชื่อมต่อ
ตาราง Student เหมือนเดิม
ตัวอย่าง
ลบเรคคอร์ดของ 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() การเปลี่ยนแปลงจะไม่เกิดขึ้น