others linux服务器运维 django3 监控 k8s golang 数据库 大数据 前端 devops 理论基础 java oracle 运维日志

centos7 系统 python3 连接 sqlserver

访问量:1250 创建时间:2021-09-18

安装python3

#默认会安装pip3依赖
yum install python3

配置pip源,加速安装包的下载速度

mkdir .pip
vim .pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

安装pymssql模块包

pip3 install pymssql

编写python 的 sqlserver查询脚本

[root@hdpprdd02 ~]# cat sql.py 
# coding=utf-8
import pymssql

class SQLServer:
    def __init__(self,server,user,password,database):
    # 类的构造函数,初始化DBC连接信息
        self.server = server
        self.user = user
        self.password = password
        self.database = database

    def __GetConnect(self):
    # 得到数据库连接信息,返回conn.cursor()
        if not self.database:
            raise(NameError,"没有设置数据库信息")
        self.conn = pymssql.connect(server=self.server,user=self.user,password=self.password,database=self.database)
        cur = self.conn.cursor()
        if not cur:
            raise(NameError,"连接数据库失败")  # 将DBC信息赋值给cur
        else:
            return cur

    def ExecQuery(self,sql):
        '''
        执行查询语句
        返回一个包含tuple的list,list是元素的记录行,tuple记录每行的字段数值
        '''
        cur = self.__GetConnect()
        cur.execute(sql) # 执行查询语句
        result = cur.fetchall() # fetchall()获取查询结果
        # 查询完毕关闭数据库连接
        self.conn.close()
        return result

def main():
    msg = SQLServer(server="sqlserverIP",user="username",password="password",database="dbname")
    sqlstr="YOUR  sql "
    result = msg.ExecQuery(sqlstr)
    for (Value) in result:
        print(Value)

if __name__ == '__main__':
    main()
登陆评论: 使用GITHUB登陆