Devdit
 

AttributeError: 'MySQLConnection' object has no attribute 'execute' Python คือ วิธีแก้ไข

1.2K

รันโค้ดลบฐานข้อมูล MySQL ด้วยภาษา Python แต่รันแล้วไม่ผ่านขึ้นข้อความว่า AttributeError: 'MySQLConnection' object has no attribute 'execute' แบบนี้ต้องแก้ไขอย่างไร

import mysql.connector

con = mysql.connector.connect( host="127.0.0.1", user="root", password="")
con.execute("DROP DATABASE mydatabase")
con.close()

 

วิธีแก้ไข

ปัญหานี้เกิดจาก ตัวแปร con คือตัวแปรเก็บสถานะการเชื่อมต่อฐานข้อมูล ไม่สามารถนำมาประมวลผล SQL ได้แนะนำให้สร้าง cursor และเรียกใช้คำสั่ง execute จากตัวแปร cursor สามารถเขียนโปรแกรมได้ดังนี้

import mysql.connector

con = mysql.connector.connect( host="127.0.0.1", user="root", password="")
cs = con.cursor()
cs.execute("DROP DATABASE mydatabase")
con.close()
เขียน 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ