python操作sqlserver數據庫(創建數據庫信息類)


import pymssql
from readconfig import *    #讀取配置文件ini的py文件
import pprint

class SqlsvLib:
    def __init__(self):  # 類的構造函數,初始化數據庫連接ip或者域名,以及用戶名,密碼,要連接的數據庫名稱
        self.sqhost = sqhost        #sqhost在readconfig內聲明
        self.squser = squser        #squser在readconfig內聲明
        self.sqpasswd = sqpasswd        #sqpasswd在readconfig內聲明
        self.sqdb = sqdb        #sqdb在readconfig內聲明

    def __GetSqlConnect(self):  # 得到數據庫連接信息函數, 返回: conn.cursor()
        self.conn = pymssql.connect(host=self.sqhost, user=self.squser, password=self.sqpasswd, database=self.sqdb, charset='utf8')
        sqcur = self.conn.cursor()  # 將數據庫連接信息,賦值給cur。
        if not sqcur:
            return (NameError, "sqlserver連接數據庫失敗")
        else:
            return sqcur

    # 執行查詢語句,返回的是一個包含tuple的list,list的元素是記錄行,tuple的元素是每行記錄的字段
    def ExecSqlQuery(self, sql):  # 執行Sql語句函數,返回結果
        sqcur = self.__GetSqlConnect()  # 獲得數據庫連接信息
        # 使用execure方法執行sql語句
        try:
            sqcur.execute(sql)  # 執行Sql語句
            resList = sqcur.fetchall()  # 獲得所有的查詢結果
        except:
            print("Error:sql unable to fetch data")
        self.conn.close()  # 查詢完畢后必須關閉連接
        return resList      # 返回查詢結果

    def ExecNonQuery(self, sql):
        sqcur = self.__GetConnect()
        sqcur.execute(sql)
        self.conn.commit()
        self.conn.close()

if __name__ == '__main__':
    ms=SqlsvLib()
    ll=ms.ExecSqlQuery("select  top 10  * from     Sys_Menu")
    print(ll)        

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM