python在使用MySQLdb库的时候,如下方法默认获取的cursor的结果集是tuple结构的。

con = MySQLdb.connect('host',port,'username','passwod','db_name','gbk')

curosr = con.cursor()

sql = "select * from test_table"   #test_table : name,age

cusor = cursor.execute(sql)

r = cusor.fetchone()

print r[0]+'\t'+r[1]
cursor.close() con.close()

我们获得r的结果集是元组形式的,这样如果我们以后更改数据表的字段顺序,那么我们必须要修改现有数据库代码,如何才能做到不修改代码呢,很简单,使用DictCursor,这样得到的结果集就是字典形式的了,我们可以用key去获取数据了。

如下是如何获取DictCursor

cursor = con.cursor(cursorclass=MySQLdb.cursors.DictCursor)
cursor.execute(sql)
r = cursor.fetchone()
print r['name']+'\t'+r['age']

python mysqldb使用dictcursor的更多相关文章

  1. python MySQLdb 对mysql基本操作方法

    #!/usr/bin/env python # -*- coding:utf-8 -*- import MySQLdb conn = MySQLdb.connect(host=',db='host') ...

  2. python MySQLdb pymsql

    参考文档 https://www.python.org/dev/peps/pep-0249/#nextset 本节内容 MySQLdb  pymysql MySQLdb和pymysql分别为Pytho ...

  3. python MySQLdb安装和使用

    MySQLdb是Python连接MySQL的模块,下面介绍一下源码方式安装MySQLdb: 首先要下载下载:请到官方网站http://sourceforge.net/projects/mysql-py ...

  4. Python MySQLdb 模块使用方法

    import MySQLdb 2.和数据库建立连接 conn=MySQLdb.connect(host="localhost",user="root",pass ...

  5. Python MySQLdb 学习总结(转)

    转自http://www.cnblogs.com/coser/archive/2012/01/12/2320741.html 感谢@糖拌咸鱼 任何应用都离不开数据,所以在学习python的时候,当然也 ...

  6. Python MySQLdb在Linux下的快速安装

    在家里windows环境下搞了一次 见   python MySQLdb在windows环境下的快速安装.问题解决方式 http://blog.csdn.NET/wklken/article/deta ...

  7. #MySQL for Python(MySQLdb) Note

    #MySQL for Python(MySQLdb) Note #切记不要在python中创建表,只做增删改查即可. #步骤:(0)引用库 -->(1)创建连接 -->(2)创建游标 -- ...

  8. Python mysqldb模块

    #!/usr/bin/env python2.7 #-*- coding:utf8 -*- import os import sys import logging import MySQLdb fro ...

  9. cygwin 下安装python MySQLdb

    cygwin 下安装python MySQLdb 1) cygwin 更新 运行 cygwin/setup-x86_64.exe a 输入mysql,选择下面的包安装: libmysqlclient- ...

随机推荐

  1. 【转】VIM 快速注释

    我是用自己自定义的,跟你分享一下吧.希望能帮到你. 在.vimrc中加入下面的语句:vmap <C-S-P>    dO#endif<Esc>PO#if 0<Esc> ...

  2. [AngularJS] Using $anchorScroll

    If you're in a scenario where you want to disable the auto scrolling, but you want to control the sc ...

  3. JS加解密URL参数encodeURIComponent() decodeURIComponent()

    参考1:http://www.w3school.com.cn/js/jsref_encodeURIComponent.asp 参考2:http://www.w3school.com.cn/js/jsr ...

  4. Ruby on Rails Tutorial 第四章 Rails背后的Ruby 之 其他数据类型(二)

    1.方法 定义如下所示: def string_message(str='') if str.empty? "It's an empty string!" else "T ...

  5. UNIX标准化及实现之POSIX标准扩展头文件

    POSIX标准定义的XSI(X/Open System Interface)扩展头文件 头文件 说明 <cpio.h> cpio归档值 <dlfcn.h> 动态链接 <f ...

  6. the railway problem(the example of stack)

    this problem is a very classic problem which can use stack to solve. the problem can be searched thr ...

  7. 小白日记22:kali渗透测试之提权(二)--抓包嗅探

    抓包嗅探 通过抓包嗅探目标机器的流量,发现账号密码. Windows系统 1.Wirehshark 2.Omnipeek 3.commview 4.Sniffpass 只会抓取识别传输密码的明文协议, ...

  8. 错误与修复:ASP.NET无法检测IE10,导致_doPostBack未定义JavaScript错误,恒处于FF5卷动条位置

    浏览器版本号继续升级过程中.IE9诞生了,IE10 也即将问世,火狐5和6已经发布了,而7和8也快出现了,Opera已经到了11,Chrome还在继续,我也不知道,应该总在14和50之间吧.不管怎样, ...

  9. JDBC的批量批量插入

    本文部分转载于:http://blog.itpub.net/29254281/viewspace-1151785/ http://www.cnblogs.com/chenjianjx/archive/ ...

  10. 【约瑟夫环变形】UVa 1394 - And Then There Was One

    首先看到这题脑子里立刻跳出链表..后来继续看如家的分析说,链表法时间复杂度为O(n*k),肯定会TLE,自己才意识到果然自个儿又头脑简单了 T^T. 看如家的分析没怎么看懂,后来发现这篇自己理解起来更 ...