You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kubeflow Notebook(Python3)连接SQL Server报错:驱动类未找到

解决Kubeflow Notebook中jaydebeapi找不到jtds驱动的问题

可能的原因及对应解决方法

1. 确认jar文件实际路径是否正确

先在Notebook里执行以下代码,验证jar文件是否在你指定的路径中:

import os
# 查看当前工作目录
print(os.getcwd())
# 检查目标路径下的文件
print(os.listdir('/home/jovyan/'))
print(os.listdir('/user-vol-1/'))

如果输出列表里没有jtds-1.3.1.jar,说明上传路径错误。Kubeflow Notebook默认工作目录为/home/jovyan/,直接上传到根目录的话,路径应为/home/jovyan/jtds-1.3.1.jar。

2. 修改jar路径的传入格式

jaydebeapi要求jar路径以列表形式传入,调整代码如下:

import jaydebeapi
driver_name = "net.sourceforge.jtds.jdbc.Driver"
connection_url = f"jdbc:jtds:sqlserver://server_address"
connection_properties = {
    "user": 'username',
    "password": 'password',
    "domain": "USER"
}
# 将jar路径改为列表格式
jar_path = ['/home/jovyan/jtds-1.3.1.jar']
connection = jaydebeapi.connect(driver_name, connection_url, connection_properties, jar_path)

3. 检查Java环境与jar文件完整性

  • 执行!java -version确认环境中有Java运行时,若没有,在Terminal中执行以下命令安装:
    sudo apt-get update && sudo apt-get install openjdk-11-jre-headless
    
  • 重新下载jtds-1.3.1.jar,确认文件大小与官方一致后,重新上传到/home/jovyan/目录。

4. 备选方案:改用pyodbc连接SQL Server

如果jtds驱动问题无法解决,可尝试pyodbc:

  1. 安装依赖:
    !pip install pyodbc
    curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
    curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
    sudo apt-get update
    sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
    
  2. 连接代码:
    import pyodbc
    conn_str = (
        "DRIVER={ODBC Driver 17 for SQL Server};"
        "SERVER=server_address;"
        "UID=username;"
        "PWD=password;"
        "DOMAIN=USER"
    )
    connection = pyodbc.connect(conn_str)
    

内容的提问来源于stack exchange,提问作者vunh16

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 10:12:51