❶ 如何處理python3.4 使用pymssql 亂碼問題
在項目中發現這樣一個問題:sqlserver資料庫編碼為gbk,使用python3.4+pymssql 查詢,中文亂碼,經過一番思考問題解決,下面把解決辦法分享給大家:
conn = pymssql.connect(host="192.168.122.141",
port=1433,
user="myshop",
password="oyf20140208HH",
database="mySHOPCMStock",
charset='utf8',
as_dict=True) cur = conn.cursor()sql = "select top 10 [ID],[Name] from [User]"cur.execute(sql)list = cur.fetchall()for row in list: print(row["ID"],row["Name"].encode('latin-1').decode('gbk'))
接下來給大家介紹python 使用pymssql連接sql server資料庫
#coding=utf-8
#!/usr/bin/env python
#-------------------------------------------------------------------------------
# Name: pymssqlTest.py
# Purpose: 測試 pymssql庫,該庫到這里下載:http://www.lfd.uci.e/~gohlke/pythonlibs/#pymssql
#
# Author: scott
#
# Created: 04/02/2012
#-------------------------------------------------------------------------------
import pymssql
class MSSQL:
"""
對pymssql的簡單封裝
pymssql庫,該庫到這里下載:http://www.lfd.uci.e/~gohlke/pythonlibs/#pymssql
使用該庫時,需要在Sql Server Configuration Manager裡面將TCP/IP協議開啟
用法:
"""
def __init__(self,host,user,pwd,db):
self.host = host
self.user = user
self.pwd = pwd
self.db = db
def __GetConnect(self):
"""
得到連接信息
返回: conn.cursor()
"""
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):
"""
執行查詢語句
返回的是一個包含tuple的list,list的元素是記錄行,tuple的元素是每行記錄的欄位
調用示例:
ms = MSSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics")
resList = ms.ExecQuery("SELECT id,NickName FROM WeiBoUser")
for (id,NickName) in resList:
print str(id),NickName
"""
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()
"""
cur = self.__GetConnect()
cur.execute(sql)
self.conn.commit()
self.conn.close()
def main():
## ms = MSSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics")
## #返回的是一個包含tuple的list,list的元素是記錄行,tuple的元素是每行記錄的欄位
## ms.ExecNonQuery("insert into WeiBoUser values('2','3')")
ms = MSSQL(host="localhost",user="sa",pwd="123456",db="PythonWeiboStatistics")
resList = ms.ExecQuery("SELECT id,weibocontent FROM WeiBo")
for (id,weibocontent) in resList:
print str(weibocontent).decode("utf8")
if __name__ == '__main__':
main()
腳本之家提醒大家需要注意事項:
使用pymssql進行中文操作時候可能會出現中文亂碼,我解決的方案是:
文件頭加上 #coding=utf8
sql語句中有中文的時候進行encode
insertSql = "insert into WeiBo([UserId],[WeiBoContent],[PublishDate]) values(1,'測試','2012/2/1')".encode("utf8")
連接的時候加入charset設置信息
pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")
❷ 軟體測試工程師應該具備哪些技能
按其級別和職位的不同,可分為三類:
高級軟體測試工程師,熟練掌握軟體測試與開發技術,且對所測試軟體對口行業非常了解,能夠對可能出現的問題進行分析評估;中級軟體測試工程師,編寫軟體測試方案、測試文檔,與項目組一起制定軟體測試階段的工作計劃,能夠在項目運行中合理利用測試工具完成測試任務。
初級軟體測試工程師,其工作通常都是按照軟體測試方案和流程對產品進行功能測驗,檢察產品是否有缺陷。
(2)pythonmssqlserver擴展閱讀
工作職責
1、編寫測試計劃、規劃詳細的測試方案、編寫測試用例。
2、根據測試計劃搭建和維護測試環境。
3、執行測試工作,提交測試報告。包括編寫用於測試的自動測試腳本,完整地記錄測試結果,編寫完整的測試報告等相關的技術文檔。
4、對測試中發現的問題進行詳細分析和准確定位,與開發人員討論缺陷解決方案。
5、提出對產品的進一步改進的建議,並評估改進方案是否合理;對測試結果進行總結與統計分析,對測試進行跟蹤,並提出反饋意見。
6、為業務部門提供相應技術支持,確保軟體質量指標。
❸ python3 連接 sql server 2014
真巧,剛剛做過,鏈接的也是MSSQL2014的資料庫,並且測試是成功的
importpymssql
conn=pymssql.connect(host='主機名或IP',user='資料庫用戶名',password='資料庫用戶密碼',database='資料庫名',charset='utf8')
cursor=conn.cursor()
ifnotcursor:
raise(NameError,"連接資料庫失敗")
strsql="select*from表"
try:
cursor.execute(strsql)#執行SQL語句
conn.commit()#修改數據後提交事務
except:
print(0,"錯誤:"+strsql)
pass
finally:
print(l,"成功!")
pass
cursor.close()#關閉對象
conn.close()#關閉資料庫連接
import pymssql這句話必須有,主要是pymssql必須要安裝上,可以使用pip list來查看是否安裝