博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 3.6 链接mssql 进行数据操作
阅读量:5836 次
发布时间:2019-06-18

本文共 2136 字,大约阅读时间需要 7 分钟。

#!/usr/bin/env python# -*- coding: UTF-8 -*-import pymssqlclass MSSQL(object):    '''    对pymssql的简单封装    pymssql库,该库到这里下载:http://www.lfd.uci.edu/~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):        '''        得到链接信息        :return:         '''        if not self.db:            raise (NameError,"没有设置数据库信息")        self.connect=pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")        cur=self.connect.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        :param sql: sql语句        :return:         '''        cur=self.GetConnect()        cur.execute(sql)        resList = cur.fetchall()        #查询完毕后必须关闭连接        self.connect.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.connect.commit()        self.connect.close()def test():        ## 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="zl", pwd="zl@123456", db="zhongla20170901")        resList = ms.ExecQuery("SELECT * FROM Pub_Law")        print(resList)if __name__ == '__main__':    test()

  

转载于:https://www.cnblogs.com/ezplusy/p/7773444.html

你可能感兴趣的文章
Java笔记01——IO流
查看>>
mysql遇见error,1049
查看>>
NYOJ311 完全背包
查看>>
codevs——2822 爱在心中
查看>>
Python基础班---第一部分(基础)---Python基础知识---认识Python
查看>>
JAVA MAC 配置
查看>>
1134 最长上升子序列 (序列型 DP)
查看>>
js冒泡排序
查看>>
第一次作业 4班卢炳武
查看>>
const int * 与 int *const
查看>>
抽象类的调用
查看>>
使用硬盘,安装双系统,Win7+CentOS
查看>>
Javascript学习总结
查看>>
JS 操作Excel格式
查看>>
php 用正则替换中文字符一系列问题解决
查看>>
ActiveMQ应用笔记一:基本概念&安装
查看>>
SAE+Java+jetty
查看>>
大话数据结构之四(串)
查看>>
加热炉简是新来的整个系统的板
查看>>
Mockito使用注意事项
查看>>