一、相关代码

数据库配置类 MysqlDBConn.py

01 #encoding=utf-8
02 '''
03 Created on 2012-11-12
04   
05 @author: Steven http://www.lifeba.org
06   
07 Mysql Conn连接类
08 '''
09   
10 import MySQLdb
11   
12 class DBConn:
13   
14     conn = None
15   
16     #建立和数据库系统的连接
17     def connect(self):
18         self.conn = MySQLdb.connect(host="localhost",port=3306,user="house", passwd="house" ,db="house",charset="utf8")
19   
20     #获取操作游标
21     def cursor(self):
22         try:
23             return self.conn.cursor()
24         except (AttributeError, MySQLdb.OperationalError):
25             self.connect()
26             return self.conn.cursor()
27   
28     def commit(self):
29         return self.conn.commit()
30   
31     #关闭连接
32     def close(self):
33         return self.conn.close()

MysqlDemo.py类

001 #encoding=utf-8
002 '''
003 Created on 2012-11-12
004   
005 @author: Steven
006   
007 http://www.lifeba.org
008   
009 Mysql操作Demo
010 Done:创建表,删除表,数据增、删、改,批量插入
011 '''
012 import MysqlDBConn
013   
014 dbconn = MysqlDBConn.DBConn()
015   
016 def process():
017     #建立连接
018     dbconn.connect()
019     #删除表
020     dropTable()
021     #创建表
022     createTable()
023     #批量插入数据
024     insertDatas()
025     #单条插入
026     insertData()
027     #更新数据
028     updateData()
029     #删除数据
030     deleteData()
031     #查询数据
032     queryData()
033     #释放连接
034     dbconn.close()
035   
036 def insertDatas():
037     sql = "insert into lifeba_users(name, realname, age) values(%s, %s, %s)"
038     tmp = (('steven1', '测试1',26), ('steven2', '测试2',25))
039     executemany(sql, tmp)
040   
041 def updateData():
042     sql = "update lifeba_users set realname = '%s' where name ='steven1'"%("测试1修改")
043     execute(sql)
044   
045 def deleteData():
046     sql = "delete from lifeba_users where id=2"
047     execute(sql)
048   
049 def queryData():
050     sql = "select * from lifeba_users"
051     rows = query(sql)
052     printResult(rows)
053   
054 def insertData():
055     sql = "insert into lifeba_users(name, realname, age) values('%s', '%s', %s)"%("steven3","测试3","26")
056     print sql
057     execute(sql)
058   
059 def executemany(sql, tmp):
060     '''插入多条数据'''
061     conn=dbconn.cursor()
062     conn.executemany(sql, tmp)
063   
064 def execute(sql):
065     '''执行sql'''
066     conn=dbconn.cursor()
067     conn.execute(sql)
068   
069 def query(sql):
070     '''查询sql'''
071     conn=dbconn.cursor()
072     conn.execute(sql)
073     rows = conn.fetchmany(10)
074     return rows
075   
076 def createTable():
077     '''创建表'''
078     conn=dbconn.cursor()
079     conn.execute('''
080     CREATE TABLE `lifeba_users` (
081       `ID` int(11) NOT NULL auto_increment,
082       `name` varchar(50) default NULL,
083       `realName` varchar(50) default NULL,
084       `age` int(11) default NULL,
085       PRIMARY KEY  (`ID`)
086     ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
087     ''')
088 #    dbconn.commit()
089   
090 def dropTable():
091     '''删除表'''
092     conn=dbconn.cursor()
093     conn.execute('''
094     DROP TABLE IF EXISTS `lifeba_users`
095     ''')
096 #    dbconn.commit()
097   
098 def printResult(rows):
099     for row in rows:
100         for i in range(0,len(row)):#遍历数组
101             print row[i], #加, 不换行打印
102         print ''
103   
104 if __name__ == '__main__':
105   
106

    process()

出自:http://blog.snsgou.com/

Pytho操作MySQL的更多相关文章

  1. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  2. python操作mysql之pymysql

    pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持3.x版本. 本文测试python版本:2.7.11.mys ...

  3. (转)Python中操作mysql的pymysql模块详解

    原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...

  4. ASP.NET Core 1.0 使用 Dapper 操作 MySql(包含事务)

    操作 MySql 数据库使用MySql.Data程序包(MySql 开发,其他第三方可能会有些问题). project.json 代码: { "version": "1. ...

  5. Python(九) Python 操作 MySQL 之 pysql 与 SQLAchemy

    本文针对 Python 操作 MySQL 主要使用的两种方式讲解: 原生模块 pymsql ORM框架 SQLAchemy 本章内容: pymsql 执行 sql 增\删\改\查 语句 pymsql ...

  6. EF操作MySql

    EF的CodeFrist操作MySql的提前准备: 1.安装两个包:MySql.Data和MySql.Data.Entity,在VS中程序包管理器中添加2个包.(备注需要的VS2015,并且EF6支持 ...

  7. .NET Core 使用Dapper 操作MySQL

    MySQL官方驱动:http://www.cnblogs.com/linezero/p/5806814.html .NET Core 使用Dapper 操作MySQL 数据库, .NET Core 使 ...

  8. asp.net core 1.1 升级后,操作mysql出错的解决办法。

    遇到问题 core的版本从1.0升级到1.1,操作mysql数据库,查询数据时遇到MissingMethodException问题,更新.插入操作没有问题. 如果你也遇到这个问题,请参照以下步骤进行升 ...

  9. 练习:python 操作Mysql 实现登录验证 用户权限管理

    python 操作Mysql 实现登录验证 用户权限管理

随机推荐

  1. wkWebView 的一些问题

    导语 WKWebView 是苹果在 WWDC 2014 上推出的新一代 webView 组件,用以替代 UIKit 中笨重难用.内存泄漏的 UIWebView.WKWebView 拥有60fps滚动刷 ...

  2. Bloom Filter概念和原理【转】

    Bloom Filter概念和原理 Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合.Bloom Filter的这种高效是有 ...

  3. IOS数组

    /*******************************************************************************************NSArray ...

  4. centos7环境搭建Eureka-Server注册中心集群

    目的:测试和线上使用这套独立的Eureka-Server注册中心集群,目前3台虚拟机集群,后续可直接修改配置文件进行新增或减少集群机器. 系统环境: Centos7x64 java8+(JDK1.8+ ...

  5. stay hungry stay foolish.

    I am honored to be with you today at your commencement from one of the finest universities in the wo ...

  6. VS2015提示:未安装Style的Visual Studio语言支持,代码编辑Intellisense将不可用。服务器控件的标记Intellisense可能不起作用

    一.问题 最近在VS2015打开文件,提示未安装Style的Visual Studio语言支持,代码编辑Intellisense将不可用.服务器控件的标记Intellisense可能不起作用. Int ...

  7. 「 HDOJ P2227 」 Find the nondecreasing subsequences

    # 题目大意 就是找不下降子序列的个数. # 解题思路 一开始想着先离散化,然后再做个 $dp$,发现用 $dp$ 的话时间复杂度是 $\text{O}(n^2)$ 的,稳稳超时. 这里说说 $dp$ ...

  8. 区间DP入门

    所为区间DP,主要是把一个大区间拆分成几个小区间,先求小区间的最优值,然后合并起来求大区间的最优值. 区间DP最关键的就是满足最优子结构以及无后效性!! 例如像是石子合并和括号匹配这两类比较经典的模型 ...

  9. php 后端规范

    后端框架地址: git@gitee.com:xielisen/xcore.git 框架使用规范,内部沟通 Controller命名规范 1, 首字母大写,其余小写 2, 对应数据库名称. 不要下划线 ...

  10. Activiti数据表

    --1:资源库流程规则表SELECT * FROM JEESITE.act_re_deployment --部署信息表SELECT * FROM JEESITE.act_re_model --流程设计 ...