一、相关代码

数据库配置类 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 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. ES-Apache Lucene

    前言 在介绍Lucene之前,我们来了解相关的历史. 有必要了解的Apache Apache软件基金会(也就是Apache Software Foundation,简称为ASF)是专门为运作一个开源软 ...

  2. Android 友盟和微信的包冲突:Multiple dex files define Lcom/tencent/a/a/a/a/a;

    最近App中有个需求是添加微信支付,就在微信技术官网 http://open.weixin.qq.com,查看一下文档,然后下载SDk,Demo.把SDK集成进项目. 照着微信的文档,把jar包和进来 ...

  3. js获取服务器生成并返回客户端呈现给客户的控件id的方法

    var repeaterId = '<%=rpData.ClientID %>'; //Repeater的客户端IDvar rows = <%=rpData.Items.Count% ...

  4. ZooKeeper读书笔记

    <ZooKeeper读书笔记> 1.Zookeeper是什么?Zookeeper是一个典型的分布式数据一致性的解决方案,分布式应用可以基于它实现诸如数据发布/订阅.负载均衡.命名服务.分布 ...

  5. 11G RAC环境数据库启动和关闭

    一步启动Oracle (1) 启动整个集群 # ./crsctl start cluster -all -all选项启动整个集群. 不加-all选项只能启动本节点的服务. (2) 启动本节点集群 以下 ...

  6. Android(java)学习笔记180:多媒体之图形的变化处理

    1. 图形的缩放 (1)布局文件activity_main.xml如下: <LinearLayout xmlns:android="http://schemas.android.com ...

  7. 7-Java-C(搭积木)

    题目描述: 小明最近喜欢搭数字积木, 一共有10块积木,每个积木上有一个数字,0~9. 搭积木规则: 每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小. 最后搭成4层的金字塔形,必须用完 ...

  8. 检查bug

    用selective_search生成的坐标是(ymin,xmin,ymax,xmax),并且是从1开始的,不是从0 这是cache中的gt数据,明显看到有65535,说明很有可能是0-1变成了655 ...

  9. 环球影城母公司:务必阻止复仇者和 X 战警团聚

    今日导读 去年 12 月,迪士尼宣布收购 21 世纪福克斯后,许多漫威粉丝们马上欢呼:复仇者终于可以和 X 战警团聚了!然而,超级英雄大团圆这个美好景象恐怕不会那么容易实现.就在近日,环球影城母公司— ...

  10. sleep 和wait的差别

    基本的差别 1.sleep 是Thread 类的方法,wait 是Object类中定义的方法 2.sleep()方法可以在任何地方使用 3.wait()方法只能在synchronized方法中使用,或 ...