本文共 2604 字,大约阅读时间需要 8 分钟。
在Windows平台上安装mysql模块用于Python开发 用python连接mysql的时候,需要用的安装版本,源码版本容易有错误提示。下边是打包了32与64版本。 MySQL-python-1.2.3.win32-py2.7.exeMySQL-python-1.2.3.win-amd64-py2.7.exe
我使用的为window10 64,故安装了64位版本
下载地址:
Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口
DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。
Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。
Python DB-API使用流程:
在python下执行
import MySQLdb
若不出错,则mysql模块安装成功
创建数据库 TESTDB.在TESTDB数据库中创建表 EMPLOYEE,进行增删改查操作。
对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务。
commit()方法游标的所有更新操作,rollback()方法回滚当前游标的所有操作。每一个方法都开始了一个新的事务
#coding:utf-8#引用模块import MySQLdb as mdb#打开数据库连接db = mdb.connect("localhost","root","chejian","TESTDB");#获取操作游标cursor = db.cursor()#若表存在,则删除。。。 当不存在时,这儿执行后的警告并不影响以后语句的执行cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")#创建数据库的SQL语句sql = """CREATE TABLE EMPLOYEE ( FIRST_NAME CHAR(20) NOT NULL, LAST_NAME CHAR(20), AGE INT , SEX CHAR(1), INCOME FLOAT)"""cursor.execute(sql)#插入记录 可以使用变量向SQL语句中传递参数sql ="""INSERT INTO EMPLOYEE(FIRST_NAME,LAST_NAME,AGE,SEX,INCOME) VALUES('Mac','Mohan',20,'M',2000)"""sql1 ="""INSERT INTO EMPLOYEE(FIRST_NAME,LAST_NAME,AGE,SEX,INCOME) VALUES('FreeBSD','Mohan',19,'M',1000)"""try: cursor.execute(sql) cursor.execute(sql1) #当对数据库数据改变时,提交到数据库执行 db.commit()except: #若有错误,则回滚 db.rollback()#数据库查询sql = "SELECT * FROM EMPLOYEE \ WHERE INCOME > '%d' " %(500)try: cursor.execute(sql) #获取所有记录列表 results = cursor.fetchall() for row in results: fname = row[0] lname = row[1] age = row[2] sex = row[3] income = row[4] print "fname=%s,lname=%s,age=%d,sex=%s,income=%d " % \ (fname,lname,age,sex,income)except: print "Error: unable to fetcg data"#更新数据库sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')try: cursor.execute(sql) db.commit()except: db.rollback()#删除操作sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d' " % (20)try: cursor.execute(sql) db.commit()except: db.rollback()#关闭数据库连接db.close()
转载地址:http://dfgji.baihongyu.com/