参考文档:

兔大侠整理的MySQL-Python(MySQLdb)封装类

Python安装模块出错(ImportError: No module named setuptools)解决方法

环境 (windows10 && python3.3) || (linux &&python2.7)

1.确保已经安装setuptools
方法如下:>下载安装的脚本https://bootstrap.pypa.io/ez_setup.py,下载该脚本后运行
     >python ez_setup.py
     >即可。脚本会自动判断python的版本,自动下载,安装。
2.安装pip
方法如下:我们同样需要在Python的官网上去下载,
解压到某目录下,cd进去,使用命令 python setup.py install 进行安装
将X:\Python\Script 目录添加到path 
 
 3.安装mysqldb
pip install mysql-python
 
 代码是python2.7版本测试通过
测试文件:
DB.py
#!/usr/bin/env python
import MySQLdb
import time class ZDB: error_code = ''
_instance = None
_conn = None
_cur = None _TIMEOUT = 30
_timecount = 0 def __init__(self,dbconfig):
try:
self._conn = MySQLdb.connect(host=dbconfig['host'],
port=dbconfig['port'],
user=dbconfig['user'],
passwd=dbconfig['passwd'],
db=dbconfig['db'],
charset=dbconfig['charset'])
except MySQLdb.Error,e:
self.error_code = e.args[0]
error_msg = "MYSQL ERROR ! ",e.args[0].e.args[1]
print error_msg if self._timecount < self._TIMEOUT:
interval = 5
self._timecount += interval
time.sleep(interval)
return self.__init__(dbconfig)
else:
raise Exception(error_msg) self._cur = self._conn.cursor()
self._instance = MySQLdb def query(self,sql):
try:
self._cur.execute("SET NAMES UTF8")
result = self._cur.execute(sql)
except MySQLdb.error,e:
self.error_code = e.args[0]
print "MYSQL ERROR-Query:",e.args[0],e.args[1]
result=FALSE
return result def update(self,sql):
try:
self._cur.execute("SET NAMES UTF8")
result = self._cur.execute(sql)
self._conn.commit()
except MySQLdb.Error,e:
self.error_code = e.args[0]
print "MYSQL ERROR-Update:",e.args[0],e.args[1]
result=FALSE
return result
def insert(self,sql):
try:
self._cur.execute("SET NAMES UTF8")
self._cur.execute(sql)
self._conn.commit()
return self._conn.insert_id()
except MySQLdb.Error,e:
self.error_code = e.args[0]
print "MYSQL ERROR-Insert:",e.args[0],e.args[1]
result=FALSE
def fetchAllRows(self):
return self._cur.fetchall()
def getRowCount(self):
return self._cur.rowcount()
def commit(self):
self._conn.commit()
def rollback(self):
self._conn.rollback()
def __del__(self):
try:
self._cur.close()
self._conn.close()
except:
pass
def close(self):
self.__del__()

使用测试:

use.py

#!/usr/bin/env python
from DB import ZDB
def main():
dbconfig={'host':' ',
'port':3306,
'user':' ',
'passwd':' ',
'db':'test',
'charset':'UTF8'}
db=ZDB(dbconfig) sql = "SELECT * FROM `user`"
db.query(sql)
result = db.fetchAllRows()
print "This is the result>",result
for row in result:
for colum in row:
print colum
db.close()
main()
使用命令 python use.py 进行调用
 
 
_____________________________________________________________
 
也可以使用pymysql查询 代码是python3.3版本测试通过
简单demo如下所示:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pymysql
conn=pymysql.connect(host='localhost',
port=3306,
user='root',
passwd='root',
db='test',
charset='utf8')
cur = conn.cursor()
sql = "SELECT * FROM chart_pie"
cur.execute(sql)
for r in cur.fetchall():
for column in r:
print(r) conn.close()

window10系统下使用python版本实现mysql查询的更多相关文章

  1. Linux系统下升级Python版本步骤(suse系统)

    Linux系统下升级Python版本步骤(suse系统) http://blog.csdn.net/lifengling1234/article/details/53536493

  2. linux centos系统下升级python版本

    本文参考资料:https://www.cnblogs.com/leon-zyl/p/8422699.html,https://blog.csdn.net/tpc1990519/article/deta ...

  3. window10系统下,彻底删除卸载mysql

    本文介绍,在Windows10系统下,如何彻底删除卸载MySQL...1>停止MySQL服务开始->所有应用->Windows管理工具->服务,将MySQL服务停止.2> ...

  4. win10系统下多python版本部署

    说明:win10,已安装有python3.5.2,为使用新浪云应用(SAE)支持微信公众号后台开发(SAE的python运行环境使用的是2.7.9),需部署python2.7的版本以便本地编辑调试. ...

  5. CentOS6 系统下升级python后yum命令使用时报错

    CentOS6 系统下升级python后yum命令使用时报错,如下: [root@xxxxxxx]#yumFile"/usr/bin/yum",line30exceptKeyboa ...

  6. Linux系统下 解决Qt5无法连接MySQL数据库的方法

    Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get instal ...

  7. Linux下升级python版本

    转载自:http://lovebeyond.iteye.com/blog/1770476 CentOS下的Python版本一般都比较低,很多应用都需要升级python来完成.我装的centOS的默认的 ...

  8. 腾讯云服务器ubuntu16.04系统下安装Python版本管理工具pyenv

    一. 系统环境   腾讯云提供的系统是ubuntu 16.04 LTS,系统默认的Python版本是2.7.12,我想要安装3.6和其他的版本.   比较方便的是腾讯云已经默认安装好了git和curl ...

  9. CentOS 7下升级Python版本到3.x系列

    由于python官方已宣布2.x系列即将停止支持,为了向前看,我们升级系统的python版本为3.x系列服务器系统为当前最新的CentOS 7.4 1.安装前查看当前系统下的python版本号 # p ...

随机推荐

  1. Fluent Python: Classmethod vs Staticmethod

    Fluent Python一书9.4节比较了 Classmethod 和 Staticmethod 两个装饰器的区别: 给出的结论是一个非常有用(Classmethod), 一个不太有用(Static ...

  2. 使用cout进行格式化

    以下内容摘自木缥缈的博客 使用cout进行格式化 ostream插入运算符将值转换为文本格式.在默认情况下,格式化值的方式如下. * 对于char值,如果它代表的是可打印字符,则将被作为一个字符显示在 ...

  3. ZOJ 1666 G-Square Coins

    https://vjudge.net/contest/67836#problem/G People in Silverland use square coins. Not only they have ...

  4. 单行文字溢出和多行文字溢出省略号显示的CSS样式

    单行文字溢出,CSS样式 <h6 style="width:70px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis ...

  5. dev_queue_xmit 发生了什么?skb还会在哪里缓存

    见 codebox/net/qdisk/xmit.log中保存了一份记录 调用关系 sch_direct_xmit --> dev_hard_start_xmit --> xmit_one ...

  6. Android基础------高级ul:消息对话框

    前言:Android消息对话框提示笔记,刚刚接触Android 1.经典模式 //列表对话框 //经典模式 public void listdialog_01(View view){ final St ...

  7. TScreen 类

    TScreen表示应用程序运行时屏幕的状态. 类关系 TObject->TPersistent->TComponent TScreen引进具有表示下列各种情况的属性 什么窗体和数据模块已经 ...

  8. K-means聚类算法与EM算法

    K-means聚类算法 K-means聚类算法也是聚类算法中最简单的一种了,但是里面包含的思想却不一般. 聚类属于无监督学习.在聚类问题中,给我们的训练样本是,每个,没有了y. K-means算法是将 ...

  9. 【bzoj4641】基因改造 特殊匹配条件的KMP

    题目描述 如果两个长度相等的字符串,如果存在一种字符的一一映射,使得第一个字符串的所有字符经过映射后与第二个字符串相同,那么就称它们“匹配”.现在给出两个串,求第一个字符串所有长度等于第二个字符串的长 ...

  10. Python文件传输模块ftplib

    ftplib是基于FTP协议实现的一个Python模块 from ftplib import FTP # 创建一个FTP连接对象 ftp = FTP() #[ 当带有参数时,即:ftp = FTP(h ...