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对小数进行除法运算的正确方法示例
Aug 25 Python
跟老齐学Python之赋值,简单也不简单
Sep 24 Python
浅谈Python中的作用域规则和闭包
Mar 20 Python
python中int与str互转方法
Jul 02 Python
python3 unicode列表转换为中文的实例
Oct 26 Python
利用Django提供的ModelForm增删改数据的方法
Jan 06 Python
详解Python二维数组与三维数组切片的方法
Jul 18 Python
详解Python图像处理库Pillow常用使用方法
Sep 02 Python
Django框架 查询Extra功能实现解析
Sep 04 Python
python实现UDP协议下的文件传输
Mar 20 Python
Python类class参数self原理解析
Nov 19 Python
Python测试框架pytest高阶用法全面详解
Jun 01 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 4.2书写安全的脚本
2006/10/09 PHP
PHP远程采集图片详细教程
2014/07/01 PHP
php支持断点续传、分块下载的类
2016/05/02 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
php封装的smartyBC类完整实例
2016/10/19 PHP
redis+php实现微博(一)注册与登录功能详解
2019/09/23 PHP
javascript mouseover、mouseout停止事件冒泡的解决方案
2009/04/07 Javascript
input 输入框内的输入事件详细分析
2010/03/17 Javascript
使用JS 清空File控件的路径值
2013/07/08 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
再谈javascript注入 黑客必备!
2016/09/14 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
详谈js遍历集合(Array,Map,Set)
2017/04/06 Javascript
利用Vue.js实现求职在线之职位查询功能
2017/07/03 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
微信小程序数据存储与取值详解
2018/01/30 Javascript
微信小程序实现联动选择器
2019/02/15 Javascript
Taro UI框架开发小程序实现左滑喜欢右滑不喜欢效果的示例代码
2020/05/18 Javascript
JS实现简易日历效果
2021/01/25 Javascript
python 七种邮件内容发送方法实例
2014/04/22 Python
python+django快速实现文件上传
2016/10/24 Python
python学习入门细节知识点
2018/03/29 Python
Python实现接受任意个数参数的函数方法
2018/04/21 Python
python使用selenium登录QQ邮箱(附带滑动解锁)
2019/01/23 Python
pybind11和numpy进行交互的方法
2019/07/04 Python
python使用pandas处理excel文件转为csv文件的方法示例
2019/07/18 Python
详解python播放音频的三种方法
2019/09/23 Python
python 生成器和迭代器的原理解析
2019/10/12 Python
Cython编译python为so 代码加密示例
2019/12/23 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
意大利折扣和优惠券网站:Groupalia
2019/10/09 全球购物
Java里面如何创建一个内部类的实例
2015/01/19 面试题
大客户销售经理职责
2013/12/04 职场文书
Python 恐龙跑跑小游戏实现流程
2022/02/15 Python