Python操作MySQL数据库

dbaopers.py

#!/bin/env python
#coding:utf-8

import MySQLdb

class DBAOpers(object):

    def get_conn(self, host='192.168.56.159', user="root", passwd='root', port=3306, autocommit = True):
        conn = None
        try:
            conn=MySQLdb.connect(host, user, passwd, port=port,connect_timeout=3,charset='utf8')
            conn.autocommit(autocommit)
        except Exception,e:
            print e
        return conn

    def query_sql(self, conn, sql, db_name='test'):
        conn.select_db(db_name)
        cursor = conn.cursor()
        try :
            cursor.execute(sql)
            rows = cursor.fetchall()
        except Exception, e :
            print e
        finally:
            cursor.close()
            conn.close()
        return rows
    
    def dml_sql(self,conn,sql,param='',db_name='test'):
        conn.select_db(db_name)
        cursor = conn.cursor()
        try:
            if param:
                cursor.executemany(sql,param)
            else:
                cursor.execute(sql)
        except Exception,e:
            print e
        finally:
            cursor.close()
            conn.commit()
            conn.close()

db = DBAOpers()


操作事例

#coding: utf-8
import MySQLdb

from dbaopers import db

#一次插入多条数据
insert_many_sql = "insert into user values(%s,%s,%s)"
param = [[4,'qq','q'],[5,'ww','ww'],[6,'qwe','qwe']]

#一次插入一条数据
insert_one_sql = "insert into user values(1,'fyl','hello')"

#查询sql
query_sql = "select * from user;"


db.dml_sql(db.get_conn(), insert_many_sql, param)
db.dml_sql(db.get_conn(),insert_one_sql)
result = db.query_sql(db.get_conn(), query_sql,db_name='test')  

for i in result:
    print i



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值