1.封装数据库连接类
# -*- coding:utf-8 -*-
import pymssql
class MSSQL:
def __init__(self,host,user,pwd,db):
self.host = host
self.user = user
self.pwd = pwd
self.db = db
def __GetConnect(self):
if not self.db:
raise(NameError,"没有设置数据库信息")
self.conn = pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")
# self.conn = pymssql.connect(host='localhost',user='sa',password='645713039', database='PythonWebServerDemo',charset="utf8")
cur = self.conn.cursor()
if not cur:
raise(NameError,"连接数据库失败")
else:
print("连接数据库成功")
return cur
def ExecQuery(self,sql):
cur = self.__GetConnect()
cur.execute(sql)
resList = cur.fetchall()
#查询完毕后必须关闭连接
self.conn.close()
return resList
def ExecNonQuery(self,sql):
cur = self.__GetConnect()
cur.execute(sql)
self.conn.commit()
self.conn.close()
2. 类的调用
ms = MSSQL(host='localhost',user='sa',pwd='645713039',db='PythonWebServerDemo')
reslist = ms.ExecQuery("select * from mytable01")
for i in reslist:
print (i)
newsql="insert into mytable01 values(%d, 'fafsdf')"%(len(reslist) + 1)
ms.ExecNonQuery(newsql.encode('utf-8'))
注意点:
先要安装pymssql,easy_install pymssql