python訪問數據庫,通過fetch獲取結果


 

下文中demo,通過fetchone,fetchmany,fetchall獲取sql執行的結果

可以通過測試發現

fetchone()是獲取1條記錄

fetchmany()如果沒有參數,默認獲取1條記錄,如果有參數,例如fetchmany(n)則是獲取n條記錄

fetchall()則是獲取所有記錄

 

注:

在執行這3個語句時,如果sql的總記錄為5條

那么順序執行fetchone(), fetchmany(2), fetchall(),  那么各語句分別獲取到1,2,2條記錄。因為各語句是在游標發生位移后獲取的。

 

 

#!/bin/bash
# -*- coding: utf-8 -*-

import MySQLdb

TEST_HOST='10.111.37.198'
TEST_PORT=3306
TEST_USER='lr'
TEST_PASSWORD='LIUrong123@'

def con_mysql(cmd):
    con = MySQLdb.connect(host=TEST_HOST,
                          port=TEST_PORT,
                          user=TEST_USER,
                          passwd=TEST_PASSWORD,
                          charset='utf8')    

    cur = con.cursor()
    cur.execute(cmd)


    data = cur.fetchone()
    data_many = cur.fetchmany(2)
    data_all = cur.fetchall()

    print data
    print data_many
    print data_all

    con.close

if __name__ == '__main__':

    print 'begin mysql test:'

    con_mysql('show databases;') 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM