文档章节

pymssql的简单使用

_A_J
 _A_J
发布于 2012/10/15 11:27
字数 331
阅读 1.2W
收藏 1

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

今天需要写一个定时任务,简单尝试用pymssql连接了一下。

工作环境:win7 + py2.7 + 远程 SQL Server 2008

1.安装pymssql

直接安装pymssql-2.0.0b1.win32-py2.7.exe,然后import pymssql,没有问题。

2.连接数据库,出现如下错误

>>> conn = pymssql.connect(host="192.168.0.100",user="sa",password="pwd",database="production")

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    conn = pymssql.connect(host="192.168.0.100",user="sa",password="pwd",database="production")
  File "pymssql.pyx", line 549, in pymssql.connect (pymssql.c:7110)
OperationalError: (20009, 'Net-Lib error during Unknown error')

不懂,搜一下看看大牛们怎么说。大牛说不知道。

只好自己折腾,经过1个小时多的研究,原来指定了编码就好了……

端口也换掉,直接创建一个游标……

>>> conn = pymssql.connect(server="192.168.0.100",port="2433",user="sa",password="pwd",
        database="production",charset="UTF-8")
>>> cursor = conn.cursor()

3. 查一下玩玩,可以开始写脚本了

>>> cursor.execute("select count(*) from applyForm")
>>> cursor.fetchone()[0]
2937
>>> conn.close()


4. 最近升级了pymssql 2.1.2,结果坑了。。。

>>> import pymssql
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: DLL load failed: 找不到指定的模块。



在网上查了一个多小时,终于发现了原因


pymlssql 2.1.1                                           pymssql 2.1.2
+------------------------------------------+             +-------------------------------------------+
|                                          |             |                                           |
| pymssql                                  |             | pymssql                                   |
|                                          |             |                                           |
|                                          |             |                                           |
|                                          |  +------->  |                                           |
|                                          |             +-------------------------------------------+
|  +-----------------------------------+   |
|  | freetds (statically linked)       |   |             +-------------------------------------------+
|  |                                   |   |             |                                           |
|  |                                   |   |             | freetds (in DLL form)                     |
|  +-----------------------------------+   |             |                                           |
+------------------------------------------+             +-------------------------------------------+

                                                         +-------------------------------------------+
                                                         |                                           |
                                                         | OpenSSL (in DLL form)                     |
                                                         |                                           |
                                                         +-------------------------------------------+

需要单独安装 FreeTDS ,尼玛,这么大的变化,版本号不舍得变一变啊!!!!还是乖乖用回旧版本吧。

原文:https://github.com/pymssql/pymssql/issues/399


© 著作权归作者所有

_A_J
粉丝 2
博文 2
码字总数 485
作品 0
朝阳
程序员
私信 提问
加载中

评论(1)

影非弦
影非弦
windows下面连接mssql2008没有问题,科室在树莓派上面的linux环境下,连接2008进行查询就无法得到准确的查询结果,博主遇到这种情况了吗
Python学习笔记-SQLSERVER的大批量导入以及日常操作(比executemany快3倍)

环境 : python3.6 / win10 / vs2017 / sqlserver2017 一、需要安装的包pymssql pip install pymssql 二、pymssql模块的介绍 pymssql 包 有modules: – 如果您关注DB-API遵从性,或者如果您习...

osc_h777op1v
2018/09/30
5
0
pymssql默认关闭自动模式开启事务行为浅析

使用Python采集SQL Server数据库服务器磁盘信息时,遇到了一个错误“CONFIG statement cannot be used inside a user transaction.DB-Lib error message 20018, severity 16”,那么为什么遇...

osc_rnrep3wi
2019/08/21
5
0
python:利用pymssql模块操作SQL server数据库

python默认的数据库是 SQLlite,不过它对MySql以及SQL server的支持也可以。这篇博客,介绍下如何在Windows下安装pymssql库并进行连接使用。。。 环境:Windows_64位 版本:python3.6 一、简...

osc_9jqxcs7q
2018/04/18
17
0
pymssql连接Azure SQL Database

使用pymssql访问Azure SQL Database时遇到“DB-Lib error message 20002, severity 9:nAdaptive Server connection failed (xxxx:1433)n')”这样的错误,具体错误如下所示: # python test.......

osc_964dc088
2019/09/21
9
0
python 使用pymssql的基本总结

pymssql 的使用 python 中使用的第三方库 下载pymssql的文件,然后使用pip 命令下载。 连接数据库操作

laola的故事
04/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

css spirit 位置计算

http://www.spritecow.com/

lemos
7分钟前
5
0
比较Git中的两个分支? [重复] - Comparing two branches in Git? [duplicate]

问题: This question already has an answer here: 这个问题在这里已有答案: Showing which files have changed between two revisions 17 answers 显示两个修订版本之间已更改的文件 17个...

javail
13分钟前
7
0
快速理解闭包

闭包是一个很有意思的东西,理解起来很绕,但是理解后很简单,网上的讲解也朦朦胧胧的.根据自己的理解解释一番: 预备知识:函数中的作用域 python中函数的作用域由def关键字界定,函数内的代码访...

hc321
19分钟前
14
0
Portworx on OpenShift 原理讲解视频

Portworx on RedHat OpenShift https://v.qq.com/x/page/g0975mnzln0.html 欢迎回到Portworx技术讲解系列视频。我们今天介绍红帽Openshift上的Portworx。我们讨论基本的OpenShift部署,包括本...

Portworx
42分钟前
158
0
type_traits类型特征萃取

type_traits库提供一组特征(traits)类——元函数,可以在编译期确定类型是否具有某些特征。 根据返回类型type_traits库里的元函数可以分为以下两大类: 检查元数据属性的值元函数:以::val...

零落年华
48分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部