一、安装(环境win7 、python2.7)
Python2.x 版本,使用MySQL-python:
安装包:MySQL-python-1.2.5.win32-py2.7.exe(双击安装)

下载地址:https://pypi.python.org/pypi/MySQL-python

二、代码
#coding:utf-8
#执行sql:execute、executmany(合理调用executmany,将多个insert放在一起,只执行一次IO,可以有效的提升数据库性能,但executmany不能一次数据量过大)
#cur.execute(ssql) #执行sql(一次仅能执行一条)
#conn.rollback() #回滚(commit前可做相应回滚,commit后无法再robllback)
#conn.commit() #提交到数据库执行(支持事务的存储引擎,需要commit,才真正写入数据库,执行多条sql后再一次调用 commit,可以适当提升性能)
#提取数据:fetchone、fetchall、fetchmany
# cur.fetchone()
#result=cur.fetchall() #结果集
#for row in result:
#print result[0][1]
#print "Nuber of rows returned: %d" %cur.rowcount #打印总条数,%d:输出整数格式
import MySQLdb
import MySQLdb.cursors
import time #################连接数据库
#连接数据库 ,MySQLdb.Connect(host ,user , passw , db)
class DbOperation():
def __init__(self,host,user,passwd,db):
self.db_error_msg=None
self.db_result=True
self.conn=''
self.host=host
self.user=user
self.passwd=passwd
self.db=db
try:
self.conn=MySQLdb.Connect(self.host,self.user,self.passwd,self.db)
#return self.conn
except MySQLdb.OperationalError as e:
self.db_error_msg=u'连接数据库' + self.conn.user + u'失败!'
self.db_result=False #################insert
#join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串
def insert(self,table_name,data):
for key in data: #for循环遍历字典data的键值key
data[key]="'"+str(data[key])+"'" #data[key] :获取key相应元素的值
key=','.join(data.keys()) #字典的元素
value=','.join(data.values()) #字典的元素的值
isql="INSERT INTO " + table_name + " (" + key + ") VALUES (" + value + ")"
cur=self.conn.cursor()
cur.execute(isql)
self.conn.commit() #################执行sql操作
def exesql(self,sql):
self.db_result=True
cur=self.conn.cursor()
try:
cur.execute(sql)
print "Nuber of rows returned: %d" %cur.rowcount
except Exception,msg:
self.db_error_msg = u'执行sql语句出错:' + sql
self.db_result = False
return False #################关闭
def close(self):
self.conn.close() if __name__=='__main__':
db1=DbOperation('10.118.55.106','test01','123456','test')
sql="select * from ts_user"
table_name="ts_user"
data={'user_id':200000012,'username':100000,'type_code':1,'status':1} #字典
db1.insert(table_name,data)
db1.exesql(sql)
db1.close()

python mysqldb 模块学习的更多相关文章

  1. python - argparse 模块学习

    python - argparse 模块学习 设置一个解析器 使用argparse的第一步就是创建一个解析器对象,并告诉它将会有些什么参数.那么当你的程序运行时,该解析器就可以用于处理命令行参数. 解 ...

  2. Python MySQLdb模块连接操作mysql数据库实例_python

    mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法.python操作数据库需要安装一个第三方的模块,在http://mysql ...

  3. python paramiko模块学习分享

    python paramiko模块学习分享 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接.paramiko支持Linux, Sola ...

  4. Python logging 模块学习

    logging example Level When it's used Numeric value DEBUG Detailed information, typically of interest ...

  5. Python time模块学习

    Python time模块提供了一些用于管理时间和日期的C库函数,由于它绑定到底层C实现,因此一些细节会基于具体的平台. 一.壁挂钟时间 1.time() time模块的核心函数time(),它返回纪 ...

  6. python os模块学习

    一.os模块概述 Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的. 二.常用方法 1.os.name 输出字符串指示正在使用的平台.如果是wi ...

  7. Python MySQLdb 模块

    MySQLdb 是 Python2 连接 MySQL 的一个模块,常见用法如下: [root@localhost ~]$ yum install -y MySQL-python # 安装 MySQLd ...

  8. python logging模块学习(转)

    前言 日志是非常重要的,最近有接触到这个,所以系统的看一下Python这个模块的用法.本文即为Logging模块的用法简介,主要参考文章为Python官方文档,链接见参考列表. 另外,Python的H ...

  9. python atexit模块学习

    python atexit模块 只定义了一个register模块用于注册程序退出时的回调函数,我们可以在这个函数中做一下资源清理的操作 注:如果程序是非正常crash,或者通过os._exit()退出 ...

随机推荐

  1. libubox-uloop

    参考:libubox组件(3)——uloop uloop是提供事件驱动机制接口,类似libevent事件框架,基于epoll接口来实现的. uloop三大功能:事件管理(uloop_fd).超时管理( ...

  2. Java字符串中文检测转换

    public class ChineseUtils { public static void main(String[] args) { String str = "中国 (1).jpg&q ...

  3. UVALive 7721 K - 2-ME Set 集合dp,所有数的位或来表示状态。

    /** 题目:UVALive 7721 K - 2-ME Set 链接:https://vjudge.net/problem/UVALive-7721 题意:给定n个数,从中取出一个集合,至少包含两个 ...

  4. logback参考配置

    logback配置 <?xml version="1.0" encoding="UTF-8"?> <configuration> < ...

  5. RMAN Restore, Recovery

    Complete recovery: rman target / nocatalog startup mount; restore database; recover database; alter ...

  6. 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败解决方案

    第一种方法测试过可用:地址:http://download.csdn.net/detail/itjjfamily/8853509 下面是第二种: .NET导出Excel遇到的80070005错误的解决 ...

  7. Ubuntu14.4下搭配WEB服务器(apache + php + mysql)

    今天,趁着自己动手安装web服务器的余热,将Ubuntu14.4搭配WEB服务器的过程记录下来. “一切皆文件”. 说明:网上关于类似搭配web服务器的教程,案例不计其数,但自己亲自动手“试试”,一定 ...

  8. 图像特征点匹配C代码

    #include "opencv2/core/core.hpp" #include "highgui.h" #include "opencv2/img ...

  9. JS encodeURI和encodeURIComponent

    一.最常用的encodeURI和encodeURIComponent 对URL编码是常见的事,所以这两个方法应该是实际中要特别注意的.它们都是编码URL,唯一区别就是编码的字符范围,其中encodeU ...

  10. Oracle体系机构

    Oracle 体系结构1.文件:数据库组成和实例文件;2.系统全局区:SGA内存结构,SGA PGA UGA关,也研究SGA和java池,共享池和大部分的池;3.物理进程和线程 server进程 ba ...