2018-12-17 Python操作SQLServer示例

weixin_34402408發表於2018-12-17

從網上找的,估計原文是:Python操作SQLServer示例

本文主要是Python操作SQLServer示例,包括執行查詢更新操作(寫入中文)。

需要注意的是:讀取資料的時候需要decode('utf-8'),寫資料的時候需要encode('utf-8'),這樣就可以避免煩人的中文亂碼或報錯問題。

Python操作SQLServer需要使用pymssql模組,使用pip install pymssql安裝即可。

此外程式碼中使用的封裝MSSQL類是從網上搜尋到的,直接用即可。

-- 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")
cur = self.conn.cursor() if not cur: raise(NameError,"連線資料庫失敗") else: 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()

ms = MSSQL(host="192.168.1.1",user="sa",pwd="sa",db="testdb")
reslist = ms.ExecQuery("select * from webuser") for i in reslist: print i

newsql="update webuser set name='%s' where id=1"%u'測試'
print newsql
ms.ExecNonQuery(newsql.encode('utf-8'))</pre>

活到老,學到老。

相關文章