在ubuntu下用python访问windows2008下的SqlServer
参考文档:
http://www.jeffkit.info/2010/01/476/
http://www.blogwind.com/Wuvist/74789.shtml
写道
使用py包:pymssql
安装linux下的ODBC驱动管理程序:
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc python-dev
编辑文件:/etc/odbcinst.ini 添加
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
CPTimeout =
CPReuse =
安装pyodbc
sudo easy_install pyodbc
测试:
import pyodbc
conn = pyodbc.connect("DRIVER={FreeTDS};SERVER=192.168.0.47;UID=sa;PWD=icnet@2012;DATABASE=cxonline")
运行后,报错
pyodbc.Error: ('08S01', '[08S01] [unixODBC][FreeTDS][SQL Server]Unable to connect: Adaptive Server is unavailable or does not exist (20009) (SQLDriverConnect)')
安装linux下的ODBC驱动管理程序:
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc python-dev
编辑文件:/etc/odbcinst.ini 添加
[FreeTDS]
Description = TDS driver (Sybase/MS SQL)
Driver = /usr/lib/odbc/libtdsodbc.so
Setup = /usr/lib/odbc/libtdsS.so
CPTimeout =
CPReuse =
安装pyodbc
sudo easy_install pyodbc
测试:
import pyodbc
conn = pyodbc.connect("DRIVER={FreeTDS};SERVER=192.168.0.47;UID=sa;PWD=icnet@2012;DATABASE=cxonline")
运行后,报错
pyodbc.Error: ('08S01', '[08S01] [unixODBC][FreeTDS][SQL Server]Unable to connect: Adaptive Server is unavailable or does not exist (20009) (SQLDriverConnect)')
写道
报错是由于SqlServer服务没开启远程访问
根据网上教程,对服务器开期远程访问
根据网上教程,对服务器开期远程访问
参考文档:http://blog.csdn.net/longren629/article/details/4746569
测试:
import pyodbc
conn = pyodbc.connect("DRIVER={FreeTDS};SERVER=192.168.0.47;UID=sa;PWD=icnet@2012;DATABASE=cxonline")
cur = conn.cursor()
sql = 'select top 10 CRMCompanyName from _CRM_Company'
cur.execute(sql)
rs = cur.fetchall()
for r in rs:
print r[0].decode('gbk')
结果:
写道
重庆无线绿洲通信技术有限公司
北京英赛
深圳摩迩凯
深圳科讯
智联广通3180
北京华欣威
科讯二部
ALLIC分公司
万维力科
北京迪赛奇正科技有限公司
北京英赛
深圳摩迩凯
深圳科讯
智联广通3180
北京华欣威
科讯二部
ALLIC分公司
万维力科
北京迪赛奇正科技有限公司