किसी भी डेटाबेस पर READ ऑपरेशन का अर्थ है डेटाबेस से कुछ उपयोगी जानकारी प्राप्त करना।
एक बार हमारा डेटाबेस कनेक्शन स्थापित हो जाने पर, आप इस डेटाबेस में क्वेरी करने के लिए तैयार हैं। आप डेटाबेस टेबल से एकल रिकॉर्ड प्राप्त करने के लिए fetchone() विधि या कई मान प्राप्त करने के लिए fetchall() विधि का उपयोग कर सकते हैं।
- fetchone() - यह क्वेरी परिणाम सेट की अगली पंक्ति प्राप्त करता है। एक परिणाम सेट एक ऑब्जेक्ट है जो तब लौटाया जाता है जब एक कर्सर ऑब्जेक्ट का उपयोग टेबल को क्वेरी करने के लिए किया जाता है।
- fetchall() - यह एक परिणाम सेट में सभी पंक्तियों को प्राप्त करता है। यदि कुछ पंक्तियां पहले ही परिणाम सेट से निकाली जा चुकी हैं, तो यह परिणाम सेट से शेष पंक्तियों को पुनर्प्राप्त करता है।
- rowcount - यह एक रीड-ओनली विशेषता है और execute() विधि द्वारा प्रभावित पंक्तियों की संख्या लौटाता है।
उदाहरण
निम्नलिखित प्रक्रिया EMPLOYEE टेबल से उन सभी रिकॉर्ड्स को क्वेरी करती है जिनका वेतन 1000 से अधिक है -
#!/usr/bin/python import MySQLdb # डेटाबेस कनेक्शन खोलें db = MySQLdb.connect("localhost","testuser","test123","TESTDB" ) # cursor() विधि का उपयोग करके एक कर्सर ऑब्जेक्ट तैयार करें cursor = db.cursor() sql = "SELECT * FROM EMPLOYEE \ WHERE INCOME > '%d'" % (1000) try: # SQL कमांड निष्पादित करें cursor.execute(sql) # सभी पंक्तियों को सूचियों की सूची में प्राप्त करें। results = cursor.fetchall() for row in results: fname = row[0] lname = row[1] age = row[2] sex = row[3] income = row[4] # अब प्राप्त परिणाम प्रिंट करें print "fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \ (fname, lname, age, sex, income ) except: print "Error: unable to fecth data" # सर्वर से डिस्कनेक्ट करें db.close()आउटपुट
यह निम्नलिखित परिणाम देगा -
fname=Mac, lname=Mohan, age=20, sex=M, income=2000