python 连接 Ms sqlserver (2005)

2024-03-15  本文已影响0人  豪威Howie

安装相关系统包 ( in rocky linux)

sudo yum install epel-release
sudo yum install freetds freetds-devel unixODBC  python3-pyodbc
# ubuntu
sudo apt-get install freetds-bin freetds-common tdsodbc odbcinst unixodbc unixodbc-dev

配置FREETDS

#sudo nano /etc/freetds.conf

[global]
  
[vmsap]
         host =192.168.4.213
         port = 1444
         tds version = 7.0
        # tds 版本根据对应的 sqlserver 版本选择,但需要测试 

测试 freetds

 tsql -S vmsap -U sa -P c123456 -p 1444 
# TDSVER=7.0 tsql -S vmsap -U sa -P c123456 -p 1444
# /etc/odbcinst.ini
[FreeTDS]  
Description=FreeTDS ODBC driver for SQL Server  
Driver=/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so  
FileUsage=1

配置 odbc

#sudo  nano /etc/odbc.ini

[vmsap]
Driver = FreeTDS
Server = 192.168.4.213
Port = 1444
TDS_Version = 7.0

测试 odbc

isql -v vmsap sa c123456

测试代码 pyodbc

# -*- coding: utf-8 -*-
import pyodbc
import os

# 连接字符串
conn_str = (
    "DRIVER={FreeTDS};"
    "SERVER=192.168.4.213,1444;"
    "UID=sa;"
    "PWD=c123456;"
    "DATABASE=master;"    
    "TDS_Version=7.0;"
)

# 连接SQL Server
conn = pyodbc.connect(conn_str)
print("连接成功!")

# 执行SQL查询
cursor = conn.cursor()
cursor.execute("SELECT @@VERSION")
row = cursor.fetchone()
print("SQL Server版本:", row[0])

# 关闭连接
conn.close()
print("连接已关闭")
上一篇 下一篇

猜你喜欢

热点阅读