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