【问题标题】:Python sybpydb.connect function cannot pass hostnamePython sybpydb.connect 函数无法传递主机名
【发布时间】:2020-09-23 14:18:24
【问题描述】:

我编写了一个 python 脚本,它连接到我们的内部系统以提取数据并将数据插入到 sybase 数据库中。第一步是通过传递数据库名称、用户和密码连接到数据库。我想传递主机名和应用程序名来连接函数,但我认为我不能传递参数。下面是我正在使用的功能。

conn=sybpydb.connect(servername=os.environ["SERVERNAME"],user=os.environ["USER"],password=os.environ["PASSWORD"])

类似地,我编写了一个使用 ctlib 的 perl 脚本,我可以传递 appname 和主机名。下面是我在 perl 脚本中使用的函数。

**return Sybase::CTlib->new($user, $pswd, $srvr, $script, { CON_PROPS => { 'CS_HOSTNAME' => hostname}});**

我的问题是.. 我们在 python 中也有类似的.. 我也可以选择其他替代方案。如果有人知道请告诉我

【问题讨论】:

  • 还没有。要使用 sybase.coonect,我相信我需要安装一些东西。我试过了,但它会抛出错误。

标签: python sybase connect hostname


【解决方案1】:

您可以尝试重构KWARGS 并确保变量名称存在于env 中。 试试KWARGS这种格式

conn = sybase.connect(user='usr', password='pass', servername='serv')

代替你的

conn=sybpydb.connect(servername=os.environ["SERVERNAME"],user=os.environ["USER"],password=os.environ["PASSWORD"])

如果不成功,您能否澄清以下几点,因为这将有助于定位错误 - 如果可能,最好添加一些错误跟踪。

但我不认为我不能传递参数。下面是我正在使用的功能。

【讨论】:

    猜你喜欢
    • 2020-12-18
    • 1970-01-01
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 1970-01-01
    • 2016-02-21
    相关资源
    最近更新 更多