#coding:utf-8 import MySQLdb
class connectdata:
def __init__(self,host,port,username,passwd,dbname):
self.host=host
self.port=port
self.username=username
self.passwd=passwd
self.dbname=dbname
def getcursor(self):
conn=MySQLdb.Connect(
host=self.host,
port=self.port,
user=self.username,
passwd=self.passwd,
db=self.dbname,charset='utf8')
return conn
def createtable(self):
self.sql='create table cl(id int(10),name varchar(10))'
conn=self.getcursor()
cur=conn.cursor()
cur.execute(self.sql)
def insertdata(self):
# self.sql='insert into cl(id,name) values(%s,%s)' #此处的%s为占位符,而不是格式化字符串
# self.data=("1","changle")
#插入多条数据用executemany
self.sql='insert into cl(id,name) values(%s,%s)'
self.data=[('1','cale'),('2','cll')]
conn = self.getcursor()
cur = conn.cursor()
cur.executemany(self.sql,self.data)
conn.commit() #数据库的存储一类引擎为Innodb,执行完成后需执行commit进行事务提交
cur.close()
conn.close()
def getdata(self):
self.sql='select * from cl where id=%s'
conn=self.getcursor()
self.cur=conn.cursor()
self.cur.execute(self.sql,(1,))
values=self.cur.fetchone()[1] #返回第一行数据的第2个字段
print values
if name=="main": connd=connectdata("10.1.1.184",3306,'root','root','ipharmacare_knowledge') connd.getdata()