zoukankan      html  css  js  c++  java
  • 【Python】Windows平台下Python、Pydev连接Mysql数据库

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

    Python连接Mysql数据库是非常easy的。

    首先,你要配置好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的安装文件夹下的libsite-packages中,这个文件夹准备存放一些供Python所import的安装包


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


    例如以下图,是一张在username为pcpassword为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。这样能避免字符串连接与注入问题。


  • 相关阅读:
    《中小学生Python编程入门指南》1.1 什么是编程
    《中小学生Python编程入门指南》前言
    简单的番茄工作法倒计时(源码)
    关于AE
    Blender2.5快捷键
    关于Blender
    随意设置控件每一个角的倒角
    关于多个block问题
    UICollectionViewCell--查找cell上的按钮点击后,对应的是哪个cell
    UIMenuItem
  • 原文地址:https://www.cnblogs.com/lytwajue/p/7360135.html
Copyright © 2011-2022 走看看