`
hammer_nail
  • 浏览: 22601 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Python 连接 MYSQL 完整版

阅读更多

今天想把我的Python的抓取器和MYSQL连在一块用,折腾了很久,也Google了些资料,为以防今后又会哟重复一次,特地把调试的步骤log down (最近记性不行,常常一天吃5,6顿饭,唉~~)

 

1. 下载MYSQL >> 这个就不多说了,从SUN网站down就行了,如果你想要个可视化的工具,你可以安装Navicat或者直接来个MSQL GUI

2.  下载MYSQL FOR PATHON edition , 由于我是X86 32的 WIN系统,就按此安装。

3.  如果你的%PYTHON_HOME%/lib 下发现MySQLdb目录,那就证明你第一步安装成功。

4.  接下来,打开你的CMD窗口,enter python >> help(MYSQLdb), 你估计会看到

        File "C:\Python26\lib\site-packages\MySQLdb\__init__.py", line 19, in  
        ImportError: DLL load failed: 找不到指定的模块。

     这个时候就该google了,后来发现是缺少了2个dll文件分别为 libguide40.dll和libmmd.dll(See attachment)

     把这两个zip包解压后拷贝到/WINDOWS/SYSTEM32目录

5. 再敲help(MYSQLdb), 靠,又错了

       sys:1: DeprecationWarning: the sets module is deprecated

     再google一把,原来是python 2.6 找不到sets,

  • 找到 %PYTHON_HOME%/lib/MySQLdb文件夹的中__init__.py,注释掉 from sets import ImmutableSet 和 
  • 将下一行 class DBAPISet(ImmutableSet): 修改成 class DBAPISet(frozenset):
  • 找到converters.py注释掉from sets import BaseSet, Set
  • 修改第45行和129行中的Set为set

6. 喝口水,再再敲help(MYSQLdb), 靠~~~~~ help 信息出来了,大概好了吧,于是马上的动手写段代码

 

'''
Created on 2009-9-13

@author: Administrator
'''
#encoding=utf-8
import MySQLdb
import sys
import random
class MYSQLTest:
    def __init__(self, host, username, password, schema, table):
        self.host = host
        self.username = username
        self.password = password
        self.schema = schema
        self.table = table
        
    # 
    def doConnect(self):
        conn = MySQLdb.Connection(self.host, self.username, self.password, self.schema)
        return conn;
    def doClose(self):
        print "do CLose"
    #
    def doSelect(self):
        self.conn = self.doConnect()
        cur = self.conn.cursor()
        cur.execute('select * from ' + self.table + '')
        results = cur.fetchall()
        for i in results:
            print str(i)
        cur.close()
        self.doClose()
    #    Insert Test
    def doInsert(self):
        self.conn = self.doConnect()
        
        cur = self.conn.cursor()
        id = random.randint(0, 500)
        print id
        sql = 'insert into ' + self.schema + '.' + self.table + ' values(' + str(id) + ', \'test\')'
        print "SQL " + sql
        cur.execute(sql)
        self.conn.commit()
        #cur.insert_id()
        cur.close()
        self.doClose()
    #    Update
    def doUpdate(self):
        self.conn = self.doConnect()
        print "TODO UPDATE"
        cur = self.conn.cursor()
        cur.execute('update  ' + self.schema + '.' + self.table + ' set info=(\'test\') where id > 3')
        self.conn.commit()
        cur.close()
        self.doClose()
    #    Delete
    def doDelete(self):
        self.conn = self.doConnect()
        print "TODO DELETE"
        cur = self.conn.cursor()
        cur.execute('delete from ' + self.schema + '.' + self.table + ' where id < 100')
        self.conn.commit()
        cur.close()
        self.doClose()
#def     
if __name__ == '__main__':
    print "Test MYSQL"
    # Insert
    try:
        mySQL = MYSQLTest('localhost', 'root', 'pass', 'python_test', 'py_test')
        mySQL.doSelect()
        #mySQL.doSelect()
        mySQL.doInsert()
        #mySQL.doSelect()
        mySQL.doUpdate()
        mySQL.doDelete()
        mySQL.doSelect()
    except:
        print "Exception Happen"

    pass
 

   唉 ~~ 总算行了,2个小时就这个去了。

分享到:
评论

相关推荐

    Python的MySQL数据库操作.docx

    Python的MySQL数据库操作-修改版 这是一个很简单且完全的对MySQL数据库进行操作的程序,希望能帮助到刚入门的朋友们。 一个程序与数据库进行交互的步骤: 1.和数据库建立连接 2.执行sql语句,接收返回值 3.关闭数据库...

    Python的MySQL数据库操作-修改版

    这是一个很简单且完全的对MySQL数据库进行操作的程序,希望能帮助到刚入门的朋友们。 一个程序与数据库进行交互的步骤: 1.和数据库建立连接 2.执行sql语句,接收返回值 3.关闭数据库连接

    mysql-connector-python:MySQL ConnectorPython完全用Python实现MySQL ClientServer协议。 不需要MySQL库,也不需要编译即可运行此符合Python DB API v2.0的驱动程序。 文档和下载

    MySQL连接器/ Python MySQL Connector / Python使Python程序可以使用符合的API来访问MySQL数据库。 它还包含的实现, 是用于与一起使用的应用程序编程接口。安装推荐的安装Connector / Python的方法是通过 。 确保您...

    一键搞定python连接mysql驱动有关问题(windows版本)

    对于mysql驱动问题折腾了一下午,现共享出解决方案 1:手动安装驱动 完全是场噩梦,推荐大家采用自动安装 2:自动安装 下载自动安装包,下载地址://www.jb51.net/softs/73369.html 双击安装!安装完成后。已能正常对...

    MySQL 5.1参考手册中文版

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装...

    基于python+Django+Mysql的校园二手交易市场.zip

    MySQL提供了一系列安全措施,如用户账户管理、访问权限控制、SSL/TLS加密连接、审计日志等功能,确保数据的安全性和合规性。同时,MySQL附带了一系列管理工具,如MySQL Server、MySQL Workbench、MySQL Shell等,...

    MySQL 5.1参考手册 (中文版)

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    Python数据分析实战源代码

    资源合计6大章节。...资源包含了数据准备、数据处理、数据的可视化,包括爬虫(网页数据抓取)、MySQL的连接、以及数据分析项目,具备完整的一个数据分析的流程,其中每一个章节都是独立的一个模块。

    MySQL 5.1中文手冊

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    MySQL 5.1官方简体中文参考手册

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL http://doc.mysql.cn/mysql5/refman-5.1-zh.html-chapter/(第 2/24 页)2006-11-02 19:...

    MySQL 5.1参考手册

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    mysql5.1中文手册

    Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码...

    利用微信公众帐号实现一个简单的足球活动报名系统,基于Python 的Web.py and Mysql.zip

    MySQL提供了一系列安全措施,如用户账户管理、访问权限控制、SSL/TLS加密连接、审计日志等功能,确保数据的安全性和合规性。同时,MySQL附带了一系列管理工具,如MySQL Server、MySQL Workbench、MySQL Shell等,...

    mysql安装配置详解教程(一)

    根据用户群体的不同可分为:社区版(Community Edition)和企业版(Enterprise),社区版完全免费,企业版是收费的 根据发布顺序来区分可分为:4.1、5.0、5.1、5.4、6.0等版本 根据MySQL的开发情况分为:Alpha、Beta...

    MYSQL中文手册

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装...

    本项目为SWPU数据库原理及应用大作业《西柚外卖订餐系统》,基于Python+Flask+MySQL开发,轻量简洁.zip

    MySQL提供了一系列安全措施,如用户账户管理、访问权限控制、SSL/TLS加密连接、审计日志等功能,确保数据的安全性和合规性。同时,MySQL附带了一系列管理工具,如MySQL Server、MySQL Workbench、MySQL Shell等,...

    MySQL5.1参考手册官方简体中文版

    2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 ...

    mysql-binlog-connector-java:MySQL二进制日志连接器

    不同版本MySQL发行版的测试套件 如果您正在寻找其他语言的类似内容,请查看 (Go), (Python)。 用法 从获取最新的JAR。 或者,您可以包括以下Maven依赖关系(可通过Maven Central获得): &lt; groupId&gt;com.git

Global site tag (gtag.js) - Google Analytics