文档章节

pymssql的简单使用

_A_J
 _A_J
发布于 2012/10/15 11:27
字数 331
阅读 11193
收藏 2
点赞 0
评论 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
粉丝 3
博文 2
码字总数 485
作品 0
朝阳
程序员
加载中

评论(1)

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

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

spritecn
2015/02/27
1K
1
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连接SQL Server数据库 - pymssql使用基础

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

乐_然
04/26
0
0
这个东西,不支持中文,大家注意。

环境为SQLServer2008,python3.3.2 数据库引擎为本地。 按照一般的连接方法,当数据库名称为英文时,比如Test, 使用连接语句: conn = pymssql.connect(‘host’, 'sa', '123456', 'Test')...

grf123
2014/01/13
2K
13
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
python连接sqlserver

安装 ①windows下直接pip install pymssql ②linux下麻烦点,需要以下两步 i. sudo apt-get install freetds-dev ii. 下载pymssql源码 再使用源码安装 使用 -- 直接贴上写的脚本 #!/usr/bin/e...

flyking
2014/03/25
0
0
pymssql-2.0.0b1 更新,Python 数据库接口

pymssql-2.0.0b1 更新,下载地址:http://code.google.com/p/pymssql/downloads/list pymssql 是Python语言用来连接微软 SQL SERVER 数据库的类库,实现了 Python DB API 2.0 。 示例代码: ...

柳逸安
2013/11/02
1K
0
解决mac下安装pymssql问题

解决mac下安装pymssql问题 孤独求学人2017-06-1139 阅读 安装mac mac环境:10.11.6 python:2.7.10 sudo pip install pymssql 后出现下面问题: running build_ext building '_mssql' extens......

孤独求学人
2017/06/11
0
0
python连接mssql

一、下载最新的pymssql并解压 tar xzvf pymssql-2.1.0.tar.gz 二、打开setup.py(假设freetds安装路径为:/opt/local/freetds) 找到 usrlocal = '/usr/local' 改为 usrlocal = '/opt/local' ......

wangxuwei
2016/03/13
22
0
python 安装pymssql

pymssql安装需要以下几个包: 1、FreeTDS 2、Cython 3、setuptools 其中FreeTDS的安装参数配置: 1、./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --enable......

bsbforever
2014/12/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

CDH的坑之Sqoop导出数据到MySQL

CDH的坑之Sqoop导出数据到MySQL 最近使用Sqoop从Hive导出数据到MySQL中,出现了一系列的问题,下面将这个问题记录一下,避免再度踩坑! 导出语句 sqoop export --connect jdbc:mysql://192....

星汉
12分钟前
0
0
Hyperledger Fabric 客户端开发三

前面两篇文章介绍了Hyperledger Fabric SDK并使用一个实例介绍如何通过SDK和Hyperledger Fabric Blockchain交互, 现在详细分析相关的过程。 首先看 enroll (登录) admin 过程。 'use stric...

十一月不远
12分钟前
0
0
PowerDesigner连接MySQL和逆向工程图

最近想梳理公司项目的表间关系,从项目后台管理系统的操作入手,以及代码的hibernate注解入手,都不算特别尽人意,于是最后还是鼓捣了一下PowerDesigner的逆向工程图,这样更直观一些。 想着...

Oo若离oO
13分钟前
0
0
威胁web应用安全的错误

一般绝大部分的web应用攻击都是没特定目标的大范围漏洞扫描,只有少数攻击确实是为入侵特定目标而进行的针对性尝试。这两种攻击都非常频繁,难以准确检测出来,许多网站的web应用防火墙都无法...

上树的熊
15分钟前
2
0
pypy2 install crypto error

install pycryptodome instead pip install pycryptodome

coord
19分钟前
0
0
Service Mesh所应对的8项挑战

Lori Macvittie 微服务架构是把双刃剑,我们享受它带来的开发速度(development velocity),却也不得不面对服务间通讯带来的复杂性问题。 目前大多数扩展容器化微服务的架构多是基于proxy-b...

好雨云帮
28分钟前
0
0
时间复杂度

1. 维基上的定义 在计算机科学中,算法的时间复杂度是一个函数,它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低...

liuyan_lc
34分钟前
0
0
js中的~符

~是js里的按位取反操作符,~~就是执行两次按位取反,其实就是保持原值,但是注意虽然是原值,但是对布尔型变量执行这个操作,会转化成相应的数值型变量,也就是 ~~true === 1,~~false === 0...

JamesView
35分钟前
0
0
webpack安装

npm install --save-dev webpack-cli

Vincent-Duan
37分钟前
0
0
实时监听EditText内容变化

主要是addTextChangedListener方法的使用 aswerEdittext.addTextChangedListener(new TextWatcher() { //编辑框的内容发生改变之前的回调方法 @Override public void before...

王先森oO
40分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部