【发布时间】:2020-04-12 12:02:49
【问题描述】:
在 Windows Server 2016 上,我们尝试使用 Jython 脚本通过 JDBC 进行连接,但我们的 jaydebeapi.connect 语句给出以下错误:
TypeError: getConnection(): 第一个参数不能被强制转换为字符串
然而,当我们查看examples of using jaydebeapi 时,第一个参数是一个字符串。
这是我们的 Python 代码:
jclassname = "com.microsoft.sqlserver.jdbc.SQLServerDriver"
database = "our_database_name"
db_elem = ";databaseName={}".format(database) if database else ""
host = "###.##.###.###" # ip address
port = "1433"
user = "user_name"
password = "password"
url = (jdbc:sqlserver://{host}:{port}{db_elem}" ";user={user};password={password}".format(host=host, port=port, db_elem=db_elem, er=user, password=password) )
print url
driver_args = [url]
jars = None
libs = None
db = jaydebeapi.connect(jclassname, driver_args, jars=jars, libs=libs)
这就是我们运行 Python 脚本的方式:
C:\jython2.7.0\bin\jython.exe C:\path_to_our_script.py
我们缺少什么?我们如何为我们的 jaydebeapi.connect 语句解决这个字符串强制错误?
【问题讨论】:
标签: java python jython windows-server-2016 jaydebeapi