python连接mysql数据库示例(做增删改操作)


Posted in Python onDecember 31, 2013

一、相关代码
数据库配置类 MysqlDBConn.py

#encoding=utf-8
'''
Created on 2012-11-12Mysql Conn连接类
'''
import MySQLdb
class DBConn:
    conn = None
    #建立和数据库系统的连接
    def connect(self):
        self.conn = MySQLdb.connect(host="localhost",port=3306,user="house", passwd="house" ,db="house",charset="utf8")
    #获取操作游标
    def cursor(self):
        try:
            return self.conn.cursor()
        except (AttributeError, MySQLdb.OperationalError):
            self.connect()
            return self.conn.cursor()
    def commit(self):
        return self.conn.commit()
    #关闭连接
    def close(self):
        return self.conn.close()

MysqlDemo.py类

#encoding=utf-8
'''
Created on 2012-11-12@author: Steven
Mysql操作Demo
Done:创建表,删除表,数据增、删、改,批量插入
'''
import MysqlDBConn
dbconn = MysqlDBConn.DBConn()
def process():
    #建立连接
    dbconn.connect()
    #删除表
    dropTable()
    #创建表
    createTable()
    #批量插入数据
    insertDatas()
    #单条插入
    insertData()
    #更新数据
    updateData()
    #删除数据
    deleteData()
    #查询数据
    queryData()
    #释放连接
    dbconn.close()
def insertDatas():
    sql = "insert into lifeba_users(name, realname, age) values(%s, %s, %s)"
    tmp = (('steven1', '测试1',26), ('steven2', '测试2',25))
    executemany(sql, tmp)
def updateData():
    sql = "update lifeba_users set realname = '%s' where name ='steven1'"%("测试1修改")
    execute(sql)
def deleteData():
    sql = "delete from lifeba_users where id=2"
    execute(sql)
def queryData():
    sql = "select * from lifeba_users"
    rows = query(sql)
    printResult(rows)
def insertData():
    sql = "insert into lifeba_users(name, realname, age) values('%s', '%s', %s)"%("steven3","测试3","26")
    print sql
    execute(sql)
def executemany(sql, tmp):
    '''插入多条数据'''
    conn=dbconn.cursor()
    conn.executemany(sql, tmp)
def execute(sql):
    '''执行sql'''
    conn=dbconn.cursor()
    conn.execute(sql)
def query(sql):
    '''查询sql'''
    conn=dbconn.cursor()
    conn.execute(sql)
    rows = conn.fetchmany(10)
    return rows
def createTable():
    '''创建表'''
    conn=dbconn.cursor()
    conn.execute('''
    CREATE TABLE `lifeba_users` (
      `ID` int(11) NOT NULL auto_increment,
      `name` varchar(50) default NULL,
      `realName` varchar(50) default NULL,
      `age` int(11) default NULL,
      PRIMARY KEY  (`ID`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    ''')
#    dbconn.commit()
def dropTable():
    '''删除表'''
    conn=dbconn.cursor()
    conn.execute('''
    DROP TABLE IF EXISTS `lifeba_users`
    ''')
#    dbconn.commit()
def printResult(rows):
    for row in rows:
        for i in range(0,len(row)):#遍历数组
            print row[i], #加, 不换行打印
        print ''
if __name__ == '__main__':
    process()
Python 相关文章推荐
Python编程之基于概率论的分类方法:朴素贝叶斯
Nov 11 Python
Python求出0~100以内的所有素数
Jan 23 Python
python如何派生内置不可变类型并修改实例化行为
Mar 21 Python
Python基于sklearn库的分类算法简单应用示例
Jul 09 Python
Python异常的检测和处理方法
Oct 26 Python
Pytorch实现GoogLeNet的方法
Aug 18 Python
解决python 文本过滤和清理问题
Aug 28 Python
如何关掉pycharm中的python console(图解)
Oct 31 Python
在Python中使用MongoEngine操作数据库教程实例
Dec 03 Python
Python celery原理及运行流程解析
Jun 13 Python
opencv 图像轮廓的实现示例
Jul 08 Python
教你怎么用Python实现GIF动图的提取及合成
Jun 15 Python
Python抓取Discuz!用户名脚本代码
Dec 30 #Python
python之模拟鼠标键盘动作具体实现
Dec 30 #Python
python多线程http下载实现示例
Dec 30 #Python
python正则匹配查询港澳通行证办理进度示例分享
Dec 27 #Python
python模拟登录百度代码分享(获取百度贴吧等级)
Dec 27 #Python
python读文件逐行处理的示例代码分享
Dec 27 #Python
python调用cmd复制文件代码分享
Dec 27 #Python
You might like
PHP中HTTP方式下的Gzip压缩传输方法举偶
2007/02/15 PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
使用Sphinx对索引进行搜索
2013/06/25 PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
2014/06/22 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
PHP获取二叉树镜像的方法
2018/01/17 PHP
js中parseFloat(参数1,参数2)定义和用法及注意事项
2013/01/27 Javascript
Extjs4.0设置Ext.data.Store传参的请求方式(默认为GET)
2013/04/02 Javascript
浅析document.createDocumentFragment()与js效率
2013/07/08 Javascript
js左侧三级菜单导航实例代码
2013/09/13 Javascript
jquery在项目中做复选框时遇到的一些问题笔记
2013/11/17 Javascript
js实现双击图片放大单击缩小的方法
2015/02/17 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
将List对象列表转换成JSON格式的类实现方法
2016/07/04 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
原生js实现表格翻页和跳转
2020/09/29 Javascript
新手该如何学python怎么学好python?
2008/10/07 Python
win系统下为Python3.5安装flask-mongoengine 库
2016/12/20 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
python使用pandas实现数据分割实例代码
2018/01/25 Python
pandas数据集的端到端处理
2019/02/18 Python
python实现布隆过滤器及原理解析
2019/12/08 Python
python随机模块random的22种函数(小结)
2020/05/15 Python
PyCharm2019.3永久激活破解详细图文教程,亲测可用(不定期更新)
2020/10/29 Python
HTML5实现音频和视频嵌入的方法
2018/08/22 HTML / CSS
Allen Edmonds官方网站:一家美国优质男士鞋类及配饰制造商
2019/03/12 全球购物
新浪微博实习心得体会
2014/01/27 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
教师竞聘演讲稿
2014/05/16 职场文书
干部选拔任用方案
2014/05/26 职场文书
大学拉赞助协议书范文
2014/09/26 职场文书
2015年小学开学寄语
2015/02/27 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
left join、inner join、right join的区别
2021/04/05 MySQL