个人主页https://xugaoxiang.com,微信公众号: Dev_Club 或者搜索 程序员Club
全部博文(229)
分类: Python/Ruby
2016-03-31 22:28:24
在开发中经常涉及到数据库的使用,而python对于数据库也有多种解决方法。本文以python3中的mysql为例,介绍pymysql模块的使用。
创建一个mysql数据库,名字叫testdb,建立一张表叫testtable,它有3个字段,分别是id,数据类型是INT(11),设为主键、非空、UNSIGNED、AUTO INCREMENT,name,数据类型是VARCHAR(45),设为非空、唯一,sex,数据类型是VARCHAR(45),设为非空
# -*- coding: utf-8 -*- __author__ = 'djstava@gmail.com' import logging import pymysql class MySQLCommand(object): def __init__(self,host,port,user,passwd,db,table): self.host = host self.port = port self.user = user self.password = passwd self.db = db self.table = table def connectMysql(self): try: self.conn = pymysql.connect(host=self.host,port=self.port,user=self.user,passwd=self.password,db=self.db,charset='utf8') self.cursor = self.conn.cursor() except: print('connect mysql error.') def queryMysql(self): sql = "SELECT * FROM " + self.table try: self.cursor.execute(sql) row = self.cursor.fetchone() print(row) except: print(sql + ' execute failed.') def insertMysql(self,id,name,sex): sql = "INSERT INTO " + self.table + " VALUES(" + id + "," + "'" + name + "'," + "'" + sex + "')" try: self.cursor.execute(sql) except: print("insert failed.") def updateMysqlSN(self,name,sex): sql = "UPDATE " + self.table + " SET sex='" + sex + "'" + " WHERE name='" + name + "'" print("update sn:" + sql) try: self.cursor.execute(sql) self.conn.commit() except: self.conn.rollback() def closeMysql(self): self.cursor.close() self.conn.close()