bleer

欢迎你来到我的空间哦~

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

 

下文中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;') 

  

posted on 2020-09-04 15:20  bleer  阅读(1358)  评论(0编辑  收藏  举报