Python操作Mysql实例代码教程(1/3)

本文介绍了Python操作MYSQL、执行SQL语句、获取结果集、遍历结果集、取得某个字段、获取表字段名、将图片插入数据库、执行事务等各种代码实例和详细介绍,代码居多,是一桌丰盛唯美的代码大餐。

实例1、取得MYSQL的版本

在windows环境下安装mysql模块用于python开发,请见我的另一篇文章:

 代码如下 复制代码

# -*- coding: UTF-8 -*-

#安装MYSQL DB for python
import MySQLdb as mdb

con = None

try:
    #连接mysql的方法:connect('ip','user','password','dbname')
    con = mdb.connect('localhost', 'root',
        'root', 'test');

    #所有的查询,都在连接con的一个模块cursor上面运行的
    cur = con.cursor()

    #执行一个查询
    cur.execute("SELECT VERSION()")

    #取得上个查询的结果,是单个结果
    data = cur.fetchone()
    print "Database version : %s " % data
finally:
    if con:
        #无论如何,连接记得关闭
        con.close()执行结果:

Database version : 5.5.25

实例2、创建一个表并且插入数据

主要还是在cursor上面执行execute方法来进行,请见源码:

 代码如下 复制代码

# -*- coding: UTF-8 -*-
# 来源于www.crazyant.net总结整理
import MySQLdb as mdb
import sys

#将con设定为全局连接
con = mdb.connect('localhost', 'root', 'root', 'test');

with con:

    #获取连接的cursor,只有获取了cursor,我们才能进行各种操作
    cur = con.cursor()
    #创建一个数据表 writers(id,name)
    cur.execute("CREATE TABLE IF NOT EXISTS
        Writers(Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(25))")
    #以下插入了5条数据
    cur.execute("INSERT INTO Writers(Name) VALUES('Jack London')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Honore de Balzac')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Lion Feuchtwanger')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Emile Zola')")
    cur.execute("INSERT INTO Writers(Name) VALUES('Truman Capote')")运行结果(在phpmyadmin中查看,在mysql命令行查看结果是一样的):

实例3、python使用slect获取mysql的数据并遍历

这个恐怕是用的最多的了,请速看代码:

 代码如下 复制代码

# -*- coding: UTF-8 -*-
# 来源:www.crazyant.net整理总结
import MySQLdb as mdb
import sys

#连接mysql,获取连接的对象
con = mdb.connect('localhost', 'root', 'root', 'test');

with con:
    #仍然是,第一步要获取连接的cursor对象,用于执行查询
    cur = con.cursor()
    #类似于其他语言的query函数,execute是python中的执行查询函数
    cur.execute("SELECT * FROM Writers")

    #使用fetchall函数,将结果集(多维元组)存入rows里面
    rows = cur.fetchall()

    #依次遍历结果集,发现每个元素,就是表中的一条记录,用一个元组来显示
    for row in rows:
        print row运行结果:

(1L, ‘Jack London’)
(2L, ‘Honore de Balzac’)
(3L, ‘Lion Feuchtwanger’)
(4L, ‘Emile Zola’)
(5L, ‘Truman Capote’)

上面的代码,用来将所有的结果取出,不过打印的时候是每行一个元祖打印,现在我们使用方法,取出其中的单个数据:

 代码如下 复制代码

# -*- coding: UTF-8 -*-
# 来源:疯狂的蚂蚁的博客www.crazyant.net总结整理

import MySQLdb as mdb
import sys

#获取mysql的链接对象
con = mdb.connect('localhost', 'root', 'root', 'test');

with con:
    #获取执行查询的对象
    cur = con.cursor()

    #执行那个查询,这里用的是select语句
    cur.execute("SELECT * FROM Writers")

    #使用cur.rowcount获取结果集的条数
    numrows = int(cur.rowcount)

    #循环numrows次,每次取出一行数据
    for i in range(numrows):
        #每次取出一行,放到row中,这是一个元组(id,name)
        row = cur.fetchone()
        #直接输出两个元素
        print row[0], row[1]

运行结果:

1 Jack London
2 Honore de Balzac
3 Lion Feuchtwanger
4 Emile Zola
5 Truman Capote

 

•numrows = int(cur.rowcount)用于获取结果集的数目
•row = cur.fetchone()每次取出一行数据,同时记录集的指针执行下一行

首页 1 2 3 末页

时间: 2024-08-01 05:29:48

Python操作Mysql实例代码教程(1/3)的相关文章

Python操作MySQL简单实现方法_python

本文实例讲述了Python操作MySQL简单实现方法.分享给大家供大家参考.具体分析如下: 一.安装: 安装MySQL 安装MySQL不用多说了,下载下来安装就是,没有特别需要注意的地方. 一个下载地址:点击打开链接 二.示例: 复制代码 代码如下: # coding=utf-8 import MySQLdb   #查询数量 def Count(cur):    count=cur.execute('select * from Student')    print 'there has %s r

python连接mysql实例分享_python

示例一 #coding=UTF-8 import sys import MySQLdb import time reload(sys) sys.setdefaultencoding('utf-8') def connectDemo(): return MySQLdb.Connection("127.0.0.1","root","root","demo",3306,charset="utf8") if __n

批处理实例代码教程 集合_DOS/BAT

批处理实例代码教程 -------------------------------------------------------------------------------- 批处理程序删除自身.bat echo 有时候我们需要批处理程序在执行完成之后删除自身,可以用 del %0 例: 复制代码 代码如下: @echo off echo 按任意键后我将删除自身 pause del %0 ---------------------------------------------------

python操作mysql数据库实现增删改查

Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口. Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: GadFly mSQL MySQL PostgreSQL Microsoft SQL Server 2000 Informix Interbase Oracle Sybase 你可以访问Python数据库接口及API查看详细的支持数据库列表. 不同的数据库你需要下载不同的DB API模块,例如你需要

python操作gmail实例_python

本文实例讲述了python操作gmail的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: import imaplib, re   class pygmail(object):     def __init__(self):         self.IMAP_SERVER='imap.gmail.com'         self.IMAP_PORT=993         self.M = None         self.response = None      

python操作mysql中文显示乱码的解决方法_python

本文实例展示了一个脚本python用来转化表配置数据xml并生成相应的解析代码. 但是在中文编码上出现了乱码,现将解决方法分享出来供大家参考. 具体方法如下: 1. Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8) 2. MySQL数据库charset=utf-8 3. Python连接MySQL是加上参数 charset=utf8 4. 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8) 示例代码如下:

python 操作 sqlite 数据库简单教程

sqlite介绍 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了. 它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C#.PHP.Java等,还有ODBC接口. 比起Mysql.PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快. SQLite第一个A

JavaScript操作XML实例代码(获取新闻标题并分页,并分页)_javascript技巧

具体内容我没有做测试.仅供参考 代码 复制代码 代码如下: <?xml version="1.0" encoding="gb2312"?> <NEWS> <New id="1" name="测试新闻1" time="2010-2-18"> <NBody>新闻测试1新闻测试1</NBody> </New> <New id="

Python安装MySQL支持模块教程

刚安装Python的MySQL支持库,一口气遇到了一连串的问题,好在Google一下,均解决.遂记录下,备忘. 1.下载Python的MySQL支持库 地址:http://sourceforge.net/projects/mysql-python/ 2.解压编译 python setup.py install 遇到第一个问题: _mysql.c:44:23: error: my_config.h: No such file or directory 解决办法,编辑setup_posix.py文件