树莓派4B 使用pyodbc

在树莓派 4B 上使用 pyodbc 连接 SQL Server,涉及到几个步骤,包括安装 FreeTDS、配置 ODBC 驱动和数据源、以及使用 pyodbc 进行连接。以下是详细的步骤和示例:

  1. 安装 FreeTDS 和 ODBC 组件
    首先,确保树莓派上安装了必要的软件包。可以使用以下命令安装 FreeTDS、unixODBC 和 pyodbc:
sudo apt update
sudo apt install freetds-bin freetds-dev unixodbc unixodbc-dev python3-pyodbc

  1. 配置 FreeTDS
    FreeTDS 是一个用于连接 SQL Server 的开源驱动程序。你需要配置 FreeTDS,以便它知道如何连接到 SQL Server 实例。

编辑 /etc/freetds/freetds.conf 文件,添加 SQL Server 实例的配置信息。例如:

[global]
    tds version = 7.4
    # 根据你的 SQL Server 版本调整 TDS 版本
    # 其他全局配置选项,例如字符集、日志文件等

[myserver]
    host = your_server_ip_or_hostname
    port = 1433
    # 如果你的 SQL Server 使用动态端口,省略 port 行,依赖 SQL Server 浏览器服务

  1. 配置 ODBC 数据源
    接下来,配置 ODBC 数据源,使 pyodbc 能够通过 ODBC 连接到 SQL Server。

编辑 /etc/odbc.ini 文件,添加你的数据源配置。例如:

[mydsn]
Description = FreeTDS driver for SQL Server
Driver = FreeTDS
Server = your_server_ip_or_hostname
Port = 1433
Database = your_database_name
# 如果需要指定用户凭证,可以在此处添加
# UID = your_username
# PWD = your_password

  1. 使用 pyodbc 连接 SQL Server
    安装 pyodbc 库,如果还没有安装,可以使用 pip:
pip3 install pyodbc

然后,可以在 Python 脚本中使用 pyodbc 连接到 SQL Server。例如:

import pyodbc

# 使用 ODBC 数据源名称连接
dsn = 'mydsn'  # 在 /etc/odbc.ini 中定义的 DSN
user = 'your_username'
password = 'your_password'

# 建立连接
conn = pyodbc.connect(f'DSN={dsn};UID={user};PWD={password}')

# 创建一个游标对象
cursor = conn.cursor()

# 执行 SQL 查询
cursor.execute('SELECT * FROM your_table')

# 获取查询结果
rows = cursor.fetchall()
for row in rows:
    print(row)

# 关闭连接
conn.close()

测试连接
使用 isql 工具测试每个数据源的连接:

isql -v ds_instance1 your_username your_password

使用 Python 连接多个实例

import pyodbc

# 连接到第一个 SQL Server 实例
conn1 = pyodbc.connect('DSN=ds_instance1;UID=your_username;PWD=your_password')

# 连接到第二个 SQL Server 实例
conn2 = pyodbc.connect('DSN=ds_instance2;UID=your_username;PWD=your_password')

# 使用连接进行数据库操作

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值