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获取Linux系统的各种信息
Jul 10 Python
深入讲解Python中的迭代器和生成器
Oct 26 Python
Python cx_freeze打包工具处理问题思路及解决办法
Feb 13 Python
如何使用VSCode愉快的写Python于调试配置步骤
Apr 06 Python
python3.5基于TCP实现文件传输
Mar 20 Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
Jan 20 Python
python3.6连接mysql数据库及增删改查操作详解
Feb 10 Python
PyQt5中向单元格添加控件的方法示例
Mar 24 Python
python 生成任意形状的凸包图代码
Apr 16 Python
详解使用scrapy进行模拟登陆三种方式
Feb 21 Python
OpenCV-Python 实现两张图片自动拼接成全景图
Jun 11 Python
利用python做数据拟合详情
Nov 17 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 日期加减的类,很不错
2009/10/10 PHP
php cURL和Rolling cURL并发方式比较
2013/10/30 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
2014/04/14 PHP
php实现过滤表单提交中html标签的方法
2014/10/17 PHP
PHP与SQL语句常用大全
2016/12/10 PHP
在laravel中使用Symfony的Crawler组件分析HTML
2017/06/19 PHP
JScript的条件编译
2007/05/29 Javascript
JQuery控制div外点击隐藏而div内点击不会隐藏的方法
2015/01/13 Javascript
jQuery头像裁剪工具jcrop用法实例(附演示与demo源码下载)
2016/01/22 Javascript
AngularJs bootstrap详解及示例代码
2016/09/01 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
2017/02/17 Javascript
JavaScript数据结构之数组的表示方法示例
2017/04/12 Javascript
AngularJs点击状态值改变背景色的实例
2017/12/18 Javascript
vue中如何动态绑定图片,vue中通过data返回图片路径的方法
2018/02/07 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
微信小程序环境下将文件上传到OSS的方法步骤
2019/05/31 Javascript
分享一款超好用的JavaScript 打包压缩工具
2020/04/26 Javascript
解决vant的Toast组件时提示not defined的问题
2020/11/11 Javascript
[02:08]2014DOTA2国际邀请赛 430专访:力争取得小组前二
2014/07/11 DOTA
[46:02]DOTA2上海特级锦标赛D组资格赛#2 Liquid VS VP第二局
2016/02/28 DOTA
Python数据分析中Groupby用法之通过字典或Series进行分组的实例
2017/12/08 Python
浅谈Python实现2种文件复制的方法
2018/01/19 Python
python爬虫实例详解
2018/06/19 Python
Python错误处理操作示例
2018/07/18 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
2019/05/15 Python
Python 正则表达式爬虫使用案例解析
2019/09/23 Python
python实现FTP文件传输的方法(服务器端和客户端)
2020/03/20 Python
Python多进程multiprocessing、进程池用法实例分析
2020/03/24 Python
详解使用python爬取抖音app视频(appium可以操控手机)
2021/01/26 Python
澳大利亚顶级美发和美容贸易超市:glamaCo
2020/01/19 全球购物
银行会计业务的个人自我评价
2013/11/02 职场文书
行政部工作岗位职责范本
2014/03/05 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
孝老爱亲事迹材料
2014/12/24 职场文书
手术室护士个人总结
2015/02/13 职场文书