READ Operation บนฐานข้อมูลใดๆ หมายถึงการดึงข้อมูลที่เป็นประโยชน์จากฐานข้อมูล
เมื่อสร้างการเชื่อมต่อฐานข้อมูลแล้ว คุณก็พร้อมที่จะทำการสืบค้นข้อมูลในฐานข้อมูลนี้ คุณสามารถใช้ fetchone() . อย่างใดอย่างหนึ่งก็ได้ วิธีการดึงระเบียนเดียวหรือ fetchall() วิธีการดึงค่าหลายค่าจากตารางฐานข้อมูล
- fetchone() − มันดึงแถวถัดไปของชุดผลลัพธ์การสืบค้น ชุดผลลัพธ์คือออบเจ็กต์ที่ส่งคืนเมื่อใช้ออบเจ็กต์เคอร์เซอร์เพื่อค้นหาตาราง
- fetchall() − มันดึงแถวทั้งหมดในชุดผลลัพธ์ หากมีการดึงแถวบางแถวออกจากชุดผลลัพธ์แล้ว ก็จะดึงแถวที่เหลือจากชุดผลลัพธ์
- จำนวนแถว − นี่เป็นแอตทริบิวต์แบบอ่านอย่างเดียวและส่งกลับจำนวนแถวที่ได้รับผลกระทบจากเมธอด execute()
ตัวอย่าง
ขั้นตอนต่อไปนี้สอบถามระเบียนทั้งหมดจากตาราง EMPLOYEE ที่มีเงินเดือนมากกว่า 1,000 -
#!/usr/bin/python
import MySQLdb
# Open database connection
db = MySQLdb.connect("localhost","testuser","test123","TESTDB" )
# prepare a cursor object using cursor() method
cursor = db.cursor()
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > '%d'" % (1000)
try:
# Execute the SQL command
cursor.execute(sql)
# Fetch all the rows in a list of lists.
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# Now print fetched result
print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \ (fname, lname, age, sex, income )
except:
print "Error: unable to fecth data"
# disconnect from server
db.close() ผลลัพธ์
สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -
fname=Mac, lname=Mohan, age=20, sex=M, income=2000