【Python】Windows平台下Python、Pydev连接Mysql数据库

Mysql数据库是跨平台的,不是说Python一定就要连接Mongodb。

Python连接Mysql数据库是很简单的。

首先,你要配置好Python的开发环境,详见《【Python】Windows版本的Python开发环境的配置,Helloworld,Python中文问题,输入输出、条件、循环、数组、类》(点击打开链接),与Mysql的开发环境,详见《【Mysql】Mysql的安装、部署与图形化》(点击打开链接)。

之后,打开Python的官网(点击打开链接),如下图,直接下载一键安装包MySQL-python-1.2.5.win32-py2.7.exe,小心不要手抖点到旁边的md5

为何不下载下方的手动安装包zip呢?主要是在我的Windows7 x64系统,如果你没有装Visual C++ 9.0的运行环境,也就是VS2008平台。即使你的电脑有VS2010,在微软的官网下载了VCForPython27.msi,这个手动安装包不知为何还是安装不了的。因此不要折腾了,直接一键安装。

随后,打开控制台,输入python,之后输入:

import MySQLdb

注意大小写,如果如下图一样没有报错,证明Python已经具备操作Mysql数据库的能力的。

但是,你依然需要配置Eclipse中的Pydev环境,否则在编程的时候会不断报错。具体如下:

1、打开Eclipse的Pydev界面,通过工具栏上的Windows->Preferences打开如下图的属性配置窗口

PyDev->Python Interpreters打开如下图的界面,如图所示,添加刚刚安装的MySQLdb包。

具体的位置就是你的Python的安装目录下的lib\site-packages中,这个目录准备存放一些供Python所import的安装包

2、之后还要在命令行中添加这条命令,如图切换的Forced Builtins的标签库,New一个MySQLdb命令,点击确定,保存退出,完事。正式可以在以后的开发中,开启Python对Mysql数据库的操作。

如下图,是一张在用户名为pc密码为admin的Mysql中test数据库中的一张usertable表:

以下的Python完成对这张表的增删改查操作,唯一值得注意的是,在连接数据库的时候,host一定要写成127.0.0.1,Python是不认localhost的。

#-*-coding:utf-8-*-
import MySQLdb
conn=MySQLdb.connect(host="127.0.0.1",user="pc",passwd="admin",db="test",port=3306);#数据库连接
cur=conn.cursor();#初始化游标
result=cur.fetchmany(cur.execute("select * from usertable"));#查询test数据库中的usertable表
for r in result:#打印查询结果
    print r;
print cur.execute("select * from usertable");#求查询结果的数量
cur.execute("insert into usertable(username,password) values(%s,%s)",["sadasd","sssss"]);#插入数据
cur.execute("delete from usertable where username=%s",["sadasd"]);#删除数据
conn.commit();#提交上面的sql语句到数据库执行
cur.close();#销毁游标
conn.close();#关闭数据库连接

运行结果如下图所示,其中L代表这个数据是long,先把整张usertable表查询出来,之后查usertable有多少项,之后删除插入的语句。

在查询语句中,返回的结果一个二维数组result,利用foreach遍历其中的每一项皆为一维数组r,根据需要可以再遍历。

如果不用cur.fetchmany方法格式化cur.execute("select * from usertable")这条语句的话,直接就是当前查询结果的数量。

对于没有返回值的insert into与delete from语句,其值利用%s代替,后面补上一个同长度的数组,替换这些值。如果其值为数字,则用%d。这样能避免字符串连接与注入问题。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-24 06:37:56

【Python】Windows平台下Python、Pydev连接Mysql数据库的相关文章

Python学习笔记_02:使用Tkinter连接MySQL数据库实现登陆注册功能

1 环境搭建 1.1 Python安装 1.2 MySQL环境搭建 1.3安装MySQLdb  2 具体实现 2.1 登陆界面 2.2 注册界面 2.3 具体实现部分代码   1 环境搭建 1.1 Python安装 本文具体实现部分Python环境:Python2.7.14,64位版本 具体安装步骤见:Python 环境搭建 附:配置PythonIDE,推荐PyCharm(具体IDE界面见下图),下载点击运行即可使用 PyCharm 官方下载地址:http://www.jetbrains.com

windows下本地或者远程连接MYSQL数据库,报1130错误的解决方法

重装MySQL,由于不知道重装之前的root密码,使用重装之后的密码连接Mysql数据,总报 ERROR 1130: host 'localhost' not allowed to connect to this MySQLserver,不能连接数据库,猜测用户权限和密码的问题. 1.用root用户登录mysql数据库 (1)停止MySQL服务,执行net stop mysql; (2)在mysql的安装路径下找到配置文件my.ini, 找到[mysqld]   输入:skip-grant-ta

【NodeJs】Ctrl+C在Linux平台和Windows平台下的TCP连接中的不同表现

Linux平台:CentOS release 6.5 (Final) Windows平台:Windows 7 旗舰版 服务器端代码如下: var net = require('net'); var server = net.createServer(function(c){ console.log('client connected: ' + c.remoteAddress); c.setNoDelay(true); c.on('data', function(data){ console.lo

Python连接MySQL数据库执行sql语句时的参数问题

由于工作需要,今天写了一个Python小脚本,其中需要连接MySQL数据库,在执行sql命令时需要传递参数,结果出问题了.在网上查了一下,发现有以下几种方式传递参数: 一.直接把sql查询语句完整写入字符串 try: connection = MySQLdb.connect(user="secsel",passwd="[email protected]",host="192.168.138.55",db="anbench")

windows平台下的oracle ORA-01031的解决方法

今天下午遇到一个很怪异的问题,在windows平台下sqlplus  / as sysdba登陆数据库,提示权限不足, 当时就纳闷了,sys用户登陆数据库还能权限不足,问题出现了,就开始寻找解决方法呗 首先查看$ORACLE_HOME/network/admin/sqlnet.ora中SQLNET.AUTHENTICATION_SERVICES项的配置信息, 网上的大多数帖子一致结论为: 在windows平台上,SQLNET.AUTHENTICATION_SERVICES必须设置为NTS或者AL

python在windows下连接mysql数据库

一,安装MySQL-python python 连接mysql数据库需要 Python interface to Mysql包,包名为 MySQL-python ,PyPI上现在到了1.2.5版本.MySQL-python在windows下是通过.exe文件的installer安装的, 前提是已经安装的python需要写入注册表,参考这篇文章:windows安装python2.7后的注册(registry)问题. 然后开始安装MySQL-python,不过这里有个坑,从PyPI上下载的MySQL

Linux平台下Python的安装及IDE开发环境搭建

Linux平台下Python的安装及IDE开发环境搭建 1.Python安装 Python有2.X和3.X两个版本,由于2.X的版本较稳定,使用者也较多,本文选择使用Python 2.X版本. 安装步骤: (1) 下载Python安装包:https://www.python.org/downloads/ (2)  解压安装包:tar zxvf Python-2.7.10.tgz (3)  编译:./compile (4)  安装:make && make install 说明: ① 这样p

Python连接Mysql数据库(Debian)

Python连接Mysql数据库(Debian) 以下是Python 2.*版本的安装方法,MySQL-python暂不支持Python 3.*版本 提前要做的工作: 安装setuptools,在终端中运行 wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python 安装pip,下载“get_pip.py”,运行 python get_pip.py 运行如下命令装好必要的包 sudo apt-get install python-d

python 3.5 连接mysql数据库

python 3.5 要连接mysql数据库,必须先安装pymysql模块,该模块可以操作mysql数据. 1.安装pymysql模块:使用pip进行安装 cmd打开运行模式,切换目录到pip的script目录下,后,输入pip install pymysql,enter键后,就会自己运行安装 2.写代码连接mysql数据库: 说明: ①import pymysql:导入刚才安装的pymysql模块,这时我们就可以调用该模块的函数来进行操作 ②con=pymysql.connect():调用py