码迷,mamicode.com
首页 > 数据库 > 详细

python连接sqlserver工具类

时间:2019-11-29 12:43:30      阅读:53      评论:0      收藏:0      [点我收藏+]

标签:database   app   taf   sqlserver   append   port   __init__   ram   cno   

上代码:

# -*- coding:utf-8 -*-
 
import pymssql
import pandas as pd

class MSSQL(object):
    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")
        cursor = self.conn.cursor()
        if not cursor:
            raise(NameError,"连接数据库失败")
        else:
            return cursor
 
    def ExecQuery(self,sql):
        cursor = self.__GetConnect()
        cursor.execute(sql)
        # 调出数据
        resList = cursor.fetchall()
 
        #查询完毕后必须关闭连接
        self.conn.close()
        return resList

    def ExecQueryToDataFrame(self,sql):
        cursor = self.__GetConnect()
        cursor.execute(sql)
        # 调出数据
        resList = cursor.fetchall()
        # cols为字段信息 例如((‘‘))
        cols = cursor.description 
        #查询完毕后必须关闭连接
        self.conn.close()

        # 将数据转换为DataFrame
        col = []
        for i in cols:
            col.append(i[0])
        data = list(map(list, resList))
        data = pd.DataFrame(data,columns=col) 

        return data
 
    def ExecNonQuery(self,sql):
        cursor = self.__GetConnect()
        cursor.execute(sql)
        self.conn.commit()
        self.conn.close()

 

如果对您有帮助,请赞助根棒棒糖~

技术图片

python连接sqlserver工具类

标签:database   app   taf   sqlserver   append   port   __init__   ram   cno   

原文地址:https://www.cnblogs.com/shurun/p/11956902.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!