繁体   English   中英

如何在Anaconda的Python IDE中使用MySQL

[英]How to use MySQL with Anaconda's Python IDE

我只是想能够做一个简单的SELECT * FROM查询。

我找到了一个Python MySQLdb包,但无法使用Windows安装程序进行安装。 它说,

注册表中找不到Python

然后我自己尝试编译它,但是我在编译过程中调试了大约六个错误并放弃了。

如果您能够使用Anaconda连接到MySQL,请详细说明您是如何做到的? 谢谢。

问题是Python软件包的二进制安装程序正在查找特定的注册表项,如果您使用的是Anaconda安装程序,则该密钥不存在。

更糟糕的是,Anaconda不会在其商业或免费存储库中提供数据库驱动程序。

所以现在你有两个选择

  1. 推荐 - 摆脱Anaconda。 卸载它。 使用适用于Windows官方Python安装程序安装Python。 这时,我会推荐2.7.x系列以获得最大的兼容性。 要使您的vanilla安装与Anaconda相同,您可以单独安装与Anaconda捆绑的软件包

    加州大学欧文分校的荧光动力学实验室维护着一个很难在Windows上安装的Python软件包库 他们已经采用这些包并将它们转换为Windows安装程序二进制文件。 因此,只需下载并双击即可安装。 就像MySQL安装程序一样,这些也只适用于官方的Python安装程序; 出于同样的原因。

    您可能会遇到的主要软件包,您可以从安装以下内容开始:

    1. setuptools
    2. ipython
    3. numpy
    4. scipy
    5. pandas
    6. matplotlib要求:
      1. dateutil
      2. pytz
      3. pyparsing
      4. six
      5. Pillow
      6. pycairo
      7. tornado
        1. certifi
        2. backports
      8. wx-python
      9. pyside
      10. pyqt
    7. Numba
      1. llvm
    8. blaze
    9. bokeh

    下载它们需要一些时间,但它们都是Windows安装程序,因此您只需双击它们即可。 请记住先决条件(上面的缩进条目)。

  2. 另一个选择是欺骗MySQL安装程序(和其他Windows安装程序)认为Anaconda安装是官方的Python安装。 您可以通过修改注册表来实现。

    对于Windows 7 64,使用以下命令创建文件:

     Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\Python\\PythonCore\\2.7\\InstallPath] @="D:\\\\Python27\\\\" 

    "D:\\\\Python27\\\\"替换为Anaconda安装的路径。 使用.reg扩展名保存上述文件,然后双击它以影响对注册表的更改。 要执行此操作可能需要管理员级别访问权限,因此上述操作可能对您的系统无效。

我强烈推荐选项#1,因为它将确保您的系统设置为与其他Python库最兼容。

Anaconda附带conda安装程序,因此请使用conda而不是pip。 这适用于所有可用于conda的包。 有MySQL包可供选择,您可以从https://docs.continuum.io/anaconda/pkg-docs中选择它们。

对于pymysql,你打开命令行,调用'conda install pymysql'并观看魔法展开。

当然还有一个权衡(对于像我这样的非大师):还有一些不适用于conda的软件包。 tweepy就是其中之一。 另一方面,我没有设法在卸载anaconda之后使用pip安装sklearn,如另一个答案所示。

[编辑:]我可以在https://anaconda.org上搜索后安装tweepy

[编辑,回答问题:] @ scottlittle,你的意思是:

# -*- coding: utf-8 -*-  
# imports  
import pymysql  

# open connection to the database  
conn = pymysql.connect(host='localhost',  
                       port=3306,  
                       user='<your_user>',  
                       passwd='<your_pwd>',  
                       db='<your_db>',  
                       charset='utf8')  
cur = conn.cursor()  

sql = "SELECT * FROM <your_favourite_table>"  
cur.execute(sql)  

# close connection to the database  
cur.close()  
conn.close(  )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM