Python+sql 中文亂碼問題


  1. # coding:utf-8
    import pymssql
    import sys
    class MSSQL:
        def __init__(self, host, port, user, pwd, db):
            reload(sys)
            sys.setdefaultencoding('utf8')
            if not db:
                raise(NameError, u"沒有設置數據庫信息")
            self.conn = pymssql.connect(host=host, port=port, user=user, password=pwd, database=db, charset="utf8")
            self.cur = self.conn.cursor()
            if not self.cur:
                raise(NameError, u"連接數據庫失敗")
        # 執行查詢等有返回的sql
        def ExecQuery(self,sql):
            cur = self.cur
            cur.execute(sql)
            resList = cur.fetchall()
            return resList
        # 執行刪除等無返回的sql
        def ExecNonQuery(self,sql):
            cur = self.cur
            cur.execute(sql)
            self.conn.commit()
        def colseDB(self):
            self.conn.close()
    if __name__ == '__main__':
        ms = MSSQL(host="172.16.0.137", port='3433', user="test1", pwd="test1234", db="db1533")
        insertSql = "INSERT INTO Stu_Info ([NO], [Name], [Sex]) VALUES (1001,'張三','男');"
        selectSql = "select NO,Name from Stu_Info where No=1001;"
        ms.ExecNonQuery(insertSql)
        resList = ms.ExecQuery(selectSql)
        for (id, name) in resList:
            print str(name)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章