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实现媒体播放器功能
Feb 11 Python
详解python执行shell脚本创建用户及相关操作
Apr 11 Python
python查看文件大小和文件夹内容的方法
Jul 08 Python
python 实现一个反向单位矩阵示例
Nov 29 Python
使用Bazel编译TensorBoard教程
Feb 15 Python
在python3中实现查找数组中最接近与某值的元素操作
Feb 29 Python
解决python Jupyter不能导入外部包问题
Apr 15 Python
keras的backend 设置 tensorflow,theano操作
Jun 30 Python
如何利用python 读取配置文件
Jan 06 Python
虚拟环境及venv和virtualenv的区别说明
Feb 05 Python
Python还能这么玩之用Python做个小游戏的外挂
Jun 04 Python
Python爬虫基础之简单说一下scrapy的框架结构
Jun 26 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调用的GET和POST方法示例
2014/09/29 PHP
php中的动态调用实例分析
2015/01/07 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
JavaScript获取当前页面上的指定对象示例代码
2014/02/28 Javascript
jQuery实现响应鼠标滚动的动感菜单效果
2015/09/21 Javascript
使用ionic切换页面卡顿的解决方法
2016/12/16 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
浅谈$_FILES数组为空的原因
2017/02/16 Javascript
详解Vue双向数据绑定原理解析
2017/09/11 Javascript
基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
2018/01/09 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
JavaScript一元正号运算符示例代码
2019/06/30 Javascript
基于layui内置模块(element常用元素的操作)
2019/09/20 Javascript
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
2020/02/06 Javascript
解决vue项目运行npm run serve报错的问题
2020/10/26 Javascript
[03:13]DOTA2-DPC中国联赛1月25日Recap集锦
2021/03/11 DOTA
Scrapy-Redis结合POST请求获取数据的方法示例
2019/05/07 Python
Django框架models使用group by详解
2020/03/11 Python
VSCode基础使用与VSCode调试python程序入门的图文教程
2020/03/30 Python
Python是怎样处理json模块的
2020/07/16 Python
10个python爬虫入门实例(小结)
2020/11/01 Python
python 模拟登陆github的示例
2020/12/04 Python
马来西亚排名第一的宠物用品店:Pets Wonderland
2020/04/16 全球购物
意大利网上购书网站:Libraccio.it
2021/02/03 全球购物
中专生求职自荐信范文
2013/12/22 职场文书
后备干部考察材料
2014/02/12 职场文书
幼儿园中班上学期评语
2014/04/18 职场文书
高中语文课后反思
2014/04/27 职场文书
道德演讲稿
2014/05/21 职场文书
学习型班组申报材料
2014/05/31 职场文书
国际贸易实训总结
2015/08/03 职场文书
python实现简易名片管理系统
2021/04/11 Python
html输入两个数实现加减乘除功能
2021/07/01 HTML / CSS
MySQL系列之五 视图、存储函数、存储过程、触发器
2021/07/02 MySQL