python连接sql server

先利用pip安装pymssql库

pip install pymssql

具体连接、测试代码:

# server默认为127.0.0.1,如果打开了TCP动态端口的需要加上端口号,如'127.0.0.1:1433'
# user默认为sa
# password为自己设置的密码
# database为数据库名字
server = '127.0.0.1'
user = "sa"
password = "123456"
database = "pubs"
conn = pymssql.connect(server, user, password, database)
# 可简化为conn = pymssql.connect(host='localhost', user='sa', password='123456', database='pubs')
cursor = conn.cursor()
cursor.execute('SELECT * FROM titles')
print( cursor.fetchall() ) # 如果用pandas读取数据库
import pymssql
import pandas as pd
conn = pymssql.connect('IP地址','账号','密码','数据库')
sql_1 = "SELECT Id,creat_time from 表名"
#利用pandas直接获取数据"
data = pd.read_sql(sql_1, conn)
conn.close()
print(data)

封装好的版本:

#coding=utf-8
# sqlserver的连接
import pymssqlclass MSSQL:def __init__(self,host,user,pwd,db):self.host = hostself.user = userself.pwd = pwdself.db = dbdef __GetConnect(self):"""得到连接信息返回: conn.cursor()"""if not self.db:raise(NameError,"没有设置数据库信息")self.conn = pymssql.connect(host=self.host,user=self.user,password=self.pwd,database=self.db,charset="utf8")cur = self.conn.cursor()if not cur:raise(NameError,"连接数据库失败")else:return curdef ExecQuery(self,sql):"""执行查询语句返回的是一个包含tuple的list,list的元素是记录行,tuple的元素是每行记录的字段"""cur = self.__GetConnect()cur.execute(sql)resList = cur.fetchall()#查询完毕后必须关闭连接self.conn.close()return resListdef ExecNonQuery(self,sql):"""执行非查询语句调用示例:cur = self.__GetConnect()cur.execute(sql)self.conn.commit()self.conn.close()"""cur = self.__GetConnect()cur.execute(sql)self.conn.commit()self.conn.close()def main():# host默认为127.0.0.1,如果打开了TCP动态端口的需要加上端口号,如'127.0.0.1:1433'# user默认为sa# pwd为自己设置的密码# db为数据库名字ms = MSSQL(host='127.0.0.1',user="sa",pwd="123456",db="pubs")resList = ms.ExecQuery("SELECT * FROM titles")print(resList)if __name__ == '__main__':main()

如果出现pymssql.OperationalError: (20009, b’DB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (SZS\SQLEXPRESS)\n’)类似保错,有以下几个可能的原因:

  1. 数据库名字写错

  2. tcp/ip协议未开启,这个位于(右键此电脑,点击管理,点击服务与应用程序,点击sql配置管理器,点击sql server网络配置,点击mssqlserver的协议,右键tcp/ip,点击启用,重启电脑后才会生效)

  3. 动态端口错误,默认是没有打开动态端口的,如果打开了就需要写端口号,在2中的tcp/ip协议中查看动态端口号,点击tcp/ip协议,点击ip地址,然后翻到最下面,找到ipall 里面的动态端口号,也可以将动态端口号删掉,然后不写

  4. sa用户登录未启用

    打开sql server management studio,点击安全性,点击登录名,如果sa项出现红色的×则说明sa用户登录未启用,右键sa点击属性,点击状态即可启用。

python连接sql server相关推荐

  1. python连接SQL Server取多个结果集:Pymssql模块

    基本的用法可以参考:python连接SQL Server:Pymssql模块 和上一篇文章中的代码,只取一个结果集不同,这次会一次运行2个sql语句,然后分别取出2个结果集,打印输出. 代码中有详细的 ...

  2. python 连接sql server

    linux 下pymssql模块的安装 所需压缩包: pymssql-2.1.0.tar.bz2 freetds-patched.tar.gz 安装: tar -xvf pymssql-2.1.0.t ...

  3. Python连接SQL SERVER问题解决

    Python连接SQL SERVER问题解决 报错 核查步骤 在配置管理工具中查看127.0.0.1已启用 远程服务也是开启 sa账户设置也没有问题 解决方案 使用pip install pymssq ...

  4. Python连接sql server数据库

    Python连接数据库的标准PEP249 原版链接:https://www.python.org/dev/peps/pep-0249/ 问题一:pymssql无法连接sql server Adapti ...

  5. python连接sql server数据库(pyodbc)

    用python操作ms sql server,有好几种方法: (1)利用pymssql (2)利用pyodbc 这里讲import pyodbc来操作sql server database. pyod ...

  6. 函数计算 Python 连接 SQL Server 小结

    python 连接数据库通常要安装第三方模块,连接 MS SQL Server 需要安装 pymssql .由于 pymsql 依赖于 FreeTDS,对于先于 2.1.3 版本的 pymssql,需 ...

  7. 一文掌握python连接SQL Server,MySQL,MongoDB,Redis数据库

    博主又在为将来的学习捣鼓各种环境,这次轮到了五花八门的数据库.这篇博客主要介绍这四个数据库和各自的可视化工具,并详细介绍如何用python连接数据库.说明一下,我这里连接的为局域网内另外一台电脑上安装 ...

  8. python连接SQL Server:Pymssql模块

    数据库版本:SQL Server 2012. 按照python版本来选择下载pymssql模块,这样才能连接上sql server. 我安装的python版本是3.5 ,64位的,所以下载的pymss ...

  9. python入门23 pymssql模块(python连接sql server增删改数据 )

    增删改数据必须connect.commit()才会生效 回滚函数 connect.rollback() 连接数据库 ''' dinghanhua sql server增删改 '''import pym ...

最新文章

  1. 2019-10-06 线性系统的理解
  2. Matrix Problem
  3. [Unity][ShaderGraph][FlowCanvas] SetFloat 无效:通过脚本控制 shader 的动态参数时需要使用参数的引用名
  4. java怎么获取中文首字母_Java如何获取中文拼音首字母的方法介绍
  5. 使用信号实现异步通知机制的例子
  6. 虚拟机报错:collect.exe
  7. Atitit 标记语言ML(Markup Language) v4 目录 1. 标记语言ML Markup Language 1 1.1. 简介 1 2. 置标语言置标语言通常可以分为三类:标识性的
  8. MPP集群基本概念和搭建
  9. php 配置 error_reporting,关于php中的错误配置display_errors与error_reporting说明
  10. 苹果开发者公司账号的申请步骤
  11. 0211书架的制作过程(使用3DsMAX2016)
  12. 广东迅视资管 新媒介在文艺领域的影响:如墨汁滴入水中氤氲开来
  13. 金融量化-基于K线形态锤子线的趋势跟踪策略
  14. python打印日志(控制台内容输出)
  15. C++模板学习与粗浅理解
  16. sql 数据库课程设计作业——基于python--GUI的运动会报名管理系统
  17. 华为2288HV5服务器内存插法及内存插槽位置
  18. Z-score(Z值)的意义--转载
  19. MarkDown 图片和链接
  20. HDFS的文件压缩格式

热门文章

  1. 移动Web利器transformjs入门
  2. J2EE之初识JSP
  3. Scheduler:Event UID not valid(转)
  4. 在windows server2003邮件服务器的搭建
  5. 12.1、自定义Condition
  6. python开发图片_python实现简单的图片隐写术
  7. 计算机系统-CPU优化/特权级
  8. android studio刷rom,Android Studio 之 ROM【1】, Entity,Dao,Database
  9. jquery 打开服务器文件管理,javascript - 前端js如何封装一个方法或者是jQuery的插件实现点击一个按钮打开本地文件管理系统,进行上传文件...
  10. 计算机主机的声音线是哪个好,四大常用视频接口对比,你的电脑是哪种接口?...