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实现apahce网站日志分析示例
Apr 02 Python
跟老齐学Python之坑爹的字符编码
Sep 28 Python
Python之reload流程实例代码解析
Jan 29 Python
Python对CSV、Excel、txt、dat文件的处理
Sep 18 Python
元组列表字典(莫烦python基础)
Apr 03 Python
python基础知识(一)变量与简单数据类型详解
Apr 17 Python
python按修改时间顺序排列文件的实例代码
Jul 25 Python
python集合的创建、添加及删除操作示例
Oct 08 Python
使用Python和OpenCV检测图像中的物体并将物体裁剪下来
Oct 30 Python
python函数声明和调用定义及原理详解
Dec 02 Python
python爬取新闻门户网站的示例
Apr 25 Python
python3 hdf5文件 遍历代码
May 19 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
评分9.0以上的动画电影,剧情除了经典还很燃
2020/03/04 日漫
用在PHP里的JS打印函数
2006/10/09 PHP
php 读取文件头判断文件类型的实现代码
2013/08/05 PHP
php一些错误处理的方法与技巧总结
2013/08/10 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
2014/08/23 PHP
thinkPHP简单实现多个子查询语句的方法
2016/12/05 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
利用腾讯的ip地址库做ip物理地址定位
2010/07/24 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
2013/10/30 Javascript
jquerydom对象的事件隐藏显示和对象数组示例
2013/12/10 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
c#程序员对TypeScript的认识过程
2015/06/19 Javascript
js密码强度检测
2016/01/07 Javascript
复杂的javascript窗口分帧解析
2016/02/19 Javascript
Node.js 数据加密传输浅析
2016/11/16 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
基于JavaScript实现的希尔排序算法分析
2017/04/14 Javascript
vue.js之vue-cli脚手架的搭建详解
2017/05/05 Javascript
动态Axios的配置步骤详解
2018/01/12 Javascript
Vue登录注册并保持登录状态的方法
2018/08/17 Javascript
Vue中对拿到的数据进行A-Z排序的实例
2018/09/25 Javascript
基于JavaScript实现每日签到打卡轨迹功能
2018/11/29 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
代码块高亮可复制显示js插件highlight.js+clipboard.js整合
2021/02/15 Javascript
Python判断中文字符串是否相等的实例
2018/07/06 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
css3 矩阵的使用详解
2018/03/20 HTML / CSS
北美Newegg打造的全球尖货海购平台:tt海购
2018/09/28 全球购物
火山动力Java笔试题
2014/06/26 面试题
《花的勇气》教后反思
2014/02/12 职场文书
2014年小学教导处工作总结
2014/12/19 职场文书
小学班主任工作经验交流材料
2015/11/02 职场文书
2019通用版导游词范本!
2019/08/07 职场文书
有趣的二维码:使用MyQR和qrcode来制作二维码
2021/05/10 Python
python实现语音常用度量方法的代码详解
2021/05/25 Python
Pytest中conftest.py的用法
2021/06/27 Python