日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

linux使用pyodbc和freetds连接sqlserver

發布時間:2025/3/18 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux使用pyodbc和freetds连接sqlserver 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

安裝unixODBC

使用pyodbc需要Linux上安裝unixODBC

可使用yum或apt安裝unixODBC-devel包

編譯安裝:http://www.unixodbc.org/download.html

安裝成功驗證

#odbcinst -junixODBC 2.3.7 DRIVERS............: /usr/local/etc/odbcinst.ini SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources USER DATA SOURCES..: /root/.odbc.ini SQLULEN Size.......: 8 SQLLEN Size........: 8 SQLSETPOSIROW Size.: 8

?

安裝連接驅動

unixodbc中沒有自帶連接sqlserver的驅動,freetds提供了相關的連接驅動,也可以通過微軟提供的腳本來安裝,這里選擇freetds來提供連接驅動

微軟驅動詳細https://docs.microsoft.com/zh-cn/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

安裝freetds

https://github.com/FreeTDS/freetds

git或下載項目到文件夾中

示例使用freetds的0.91版本https://github.com/FreeTDS/freetds/releases/tag/branch-0_91

**安裝前確保安裝了如下工具:automake,autoconf,autogen,gettext,libtool,make,gcc,perl

解壓后進入目錄運行

./autogen.sh

make

make install

上述安裝針對github上的源碼安裝,下載其他包時有的已經生成了configure文件只需運行./configure后make,make install。

默認安裝路徑為/user/local/etc

測試:編輯freetds.conf在其中加入sqlserver的連接信息文件一般在/user/local/etc中

[server]host = 192.168.6.6port = 1433tds version = 7.0client chaeset = UTF-8

?

其中的tds version可查看文件中的示例選擇,錯誤的值可能導致連接失敗?Unexpected EOF from the server

使用tsql測試連接

#tsql -S server -U user -P passwordlocale is "en_US.UTF-8" locale charset is "UTF-8" using default charset "UTF-8" 1>

?

安裝pyodbc

https://pypi.org/project/pyodbc/

pip install pyodbc或者下載包后進入主目錄python setup.py install

編輯/etc/odbcinst.conf文件,該文件也可能在/usr/local/etc中

添加freetds連接庫

在文件中加入

[SQL Server]Driver = /usr/local/lib/libtdsodbc.so

?

其中driver為freetds的提供的驅動文件,SQL Server為連接字符串使用的驅動名

?

測試:

import pyodbc DBCONNECTSTR = 'DRIVER={SQL Server};SERVER=192.168.6.6;port=1433;DATABASE=test;UID=user;PWD=password;TDS_Version=7.0;' conn=pyodbc.connect(DBCONNECTSTR) conn.close()

注意TDS_Version的值與/usr/local/etc/freetds.conf中的連接示例一致

?

更多python連接sqlserver方法:

https://wiki.python.org/moin/SQL%20Server

https://www.cnblogs.com/AppleZhang/p/7878971.html

?

轉載于:https://www.cnblogs.com/QQQmadNULL/p/9547647.html

總結

以上是生活随笔為你收集整理的linux使用pyodbc和freetds连接sqlserver的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。