文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux下怎么使用Python连接MSSql Server 2008

2023-06-10 11:35

关注

小编给大家分享一下Linux下怎么使用Python连接MSSql Server 2008,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

安装unixODBC

unixODBC 是 linux 下的 ODBC 驱动管理器,官网:http://unixodbc.org。先确保你已经装上了它。如果你在 ubuntu/debian 下,直接执行:
sudo apt-get install unixODBC unixODBC-bin

就可以把 unixODBC 装上了,附带装上了图形化的 ODBC 管理器 ODBCConfig,它的样子大概是这样的:

 Linux下怎么使用Python连接MSSql Server 2008

如果你确定会在命令行下工作,就不安装 unicODBC-bin 也可以。而且后文的相关操作也是通过命令行来完成的,不会使用 ODBCConfig,提到这个只为方便 GUI 爱好者。

安装Freetds

Freetds 是应用最为广泛的 Linux 下的 ODBC 驱动,官网:http://www.freetds.org/。因为我们用的版本是 0.82 版,而 ubuntu 的更新源里仍然是 0.63 版本,我这边建议你执行 sudo apt-get remove freetds freetds-dev 来把以前装的版本删除掉,然后下载 0.82 或更新的版本。

编译 freetds 的时候一定要注意 configure 的参数,我估计当时我编译的时候参数没有设置正确,所以一直没有能够连上 mssql server。Vcc 分享了他的编译参数,如下:
./configure \

--prefix=/etc/freetds \

--with-tdsver=8.0 --enable-msdblib \

--enable-dbmfix \

--with-gnu-ld \

--enable-shared \

--enable-static

执行 configure 之后再 sudo make,sudo make install,耐心等候安装完成就可以了。

安装完成后,该用 tsql 测试一下,测试的方式是执行:
tsql –H mssql-server-ip –U username –P password

出现 1> 提示符就是成功啦。

配置 freetds

Freetds 的配置文件位置在 /etc/freetds/freetds.conf 里,打开后在最后面增加如下一个 section:

138 [db4]

139     host = 192.168.18.4

140     port = 1433

141     tds version = 7.0

其中 host 是 mssql server 的地址,tds version 是指定使用哪个 tds 版本,据 vcc 说,用 7.0 的兼容性比较好,我小试了一下,8.0 也是可以的。

完成以后,应该用 tsql 测试一下,测试的方式是执行:
tsql –S db4 –U username –P password

看到 1> 标识符就是成功啦。

配置 ODBC 驱动

接下来我们要配置一个 ODBC 驱动,驱动存储在 /etc/odbcinst.ini 文件中,用 vi 打开后,写入下面的内容:

 1 [SQL Server]

 2 Description     = MS-SQLServer

 3 Driver      = /usr/local/freetds/lib/libtdsodbc.so

 4 Driver64        = /usr/local/freetds/lib/libtdsodbc.so

 5 Setup       = /usr/lib/odbc/libtdsS.so

 6 Setup64     = /usr/lib/odbc/libtdsS.so

 7 UsageCount      = 1

 8 CPTimeout       =

 9 CPReuse     =

 10 FileUsage       = 1

这样我们就配置好一个名为 SQL Server 的驱动了。如果你的 odbcinst.ini 之前是空的,可能还需要这样一个 section:

12 [ODBC]

 13 Trace       = Yes

 14 TraceFile       = /tmp/sql.log

 15 ForceTrace      = No

 16 Pooling     = Yes

其中 Trace 是指定要不要写 log,写 log 会降低程序性能,发布版记得把 Trace 的值改为 No。

配置 ODBC 数据源

现在该到配置数据源的时候了,ODBC 数据源存放在 /etc/odbc.ini 文件中,我们用 vi 打开,然后加入如下内容:

 8 [mssql2k8]

 9 Description     = link to 18.4

 10 Driver      = SQL Server

12 Servername = db4

14 Database        = tempdb

可以看到这个名为 mssql2k8 的数据中,使用了前面在 odbcinst.ini 中定义的驱动“SQL Server”,在 freetds.conf 中定义的 db4 数据库服务器,前面的工作必不可少哇。

配置完成后可以使用 isql 测试一下,测试方式是执行:
isql mssql2k8 username password

在 isql 中你可以执行相应的 sql 语句,比如 select * from table,看看是不是真的已经能够从 mssql server 2008 中取得数据了。

安装 pyodbc

无疑,这一步是最容易的了。先到这里(http://code.google.com/p/pyodbc/downloads/list)下载 pyodbc 源码包,然后解压到相应的目录,再执行:
sudo python setup.py build
sudo python setup.py install
即可。

最后仍然是测试,可以参考http://code.google.com/p/pyodbc/wiki/Examples的代码。

以上是“Linux下怎么使用Python连接MSSql Server 2008”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯