文档章节

pymssql的简单使用

_A_J
 _A_J
发布于 2012/10/15 11:27
字数 331
阅读 11323
收藏 2

今天需要写一个定时任务,简单尝试用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
粉丝 3
博文 2
码字总数 485
作品 0
朝阳
程序员
私信 提问
加载中

评论(1)

影非弦
影非弦
windows下面连接mssql2008没有问题,科室在树莓派上面的linux环境下,连接2008进行查询就无法得到准确的查询结果,博主遇到这种情况了吗
Python操作SQLServer

安装开发环境 要进行SQLServer的开发,首先需要在本机上安装SQLServer,建立本机开发环境。可以从微软官网上下载类似cnsqlserver2012enterpriseeditionwithsp1x86x64dvd_1234493.iso文件,可...

最老程序员闫涛
08/28
0
0
python 使用pymssql连接sql server数据库

Python连接SQL Server数据库 - pymssql使用基础 ----原文地址:http://www.cnblogs.com/baiyangcao/p/pymssql_basic.html 下面是pymssql里参数使用说明,如下: pymssqlCnx类(用于连接Mssql...

326647452
2017/06/14
0
0
python怎样实现sqlserver备份

有一个应用,需要实现sqlserver 2000备份和恢复,使用pymssql,和pyodbc均无法备份,请求帮助 pymssql代码及报错如下 >>> import pymssql>>> con=pymssql.connect(host='.',user='netcafe',pa......

spritecn
2015/02/27
1K
1
Python连接SQL Server数据库 - pymssql使用基础

安装 连接数据库 pymssql连接数据库的方式和使用sqlite的方式基本相同: 使用创建连接对象 创建游标对象,SQL语句的执行基本都在游标上进行 方法执行SQL语句,获取查询结果等 调用方法关闭游...

乐_然
04/26
0
0
linux下python安装pymssql模块

安装pymssql需要的包: freetds(http://www.filewatcher.com/m/freetds-0.82.tar.gz.1596755-0.html) setuptools(https://pypi.python.org/pypi/setuptools) pymssql(https://pypi.python.o......

Thebreezecomes
06/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Apache用户认证,域名跳转

11月15日任务 11.18 Apache用户认证 11.19/11.20 域名跳转 11.21 Apache访问日志 11.18 Apache用户认证 vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把123.com那个虚拟主机编辑......

zgxlinux
36分钟前
1
0
idea 添加 VUE 的语法支持和开发

《一》VUE的开发分两种,一种是直接在HTML文件中使用,一种是VUE文件的形式开发 1,首先我们先让 HTML 文件支持 VUE 的语法指令提示 2,File -> Setting -> Edit -> Inspections -> html 3,...

文文1
54分钟前
1
0
【NLP】【七】fasttext源码解析

【一】关于fasttext fasttext是Facebook开源的一个工具包,用于词向量训练和文本分类。该工具包使用C++11编写,全部使用C++11 STL(这里主要是thread库),不依赖任何第三方库。具体使用方法...

muqiusangyang
59分钟前
3
0
防止Tweak

什么是tweak? 英文意思为捏, 拧,扭,稍稍调整(机器、系统等)。 依据维基百科的定义,tweak指的是对电子系统进行轻微调整来增强其功能的工具;在ios中tweak特指那些能够增强其它可执行程...

HeroHY
今天
3
0
linux中常用标识---不定期更新

LINUX常用标识符: 1 & && | || &: 表示进程在后台运行 例如 redis-server & 不是所有后台运行都是& 比如es ./bin/elasticsearch -d es后台运行&&: 第一个命令执行成功后 才执行后面的命令...

geek土拨鼠
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部