Sybase module for Python dsn动态构造?

pengshi001 2011-09-21 09:01:56
http://www.oschina.net/p/python-sybase

这个东西已经安装好了。

import Sybase
Sybase.connect('SYBASE', 'sa', '')

“The arguments to the Sybase.connect() function are server (from the interfaces file), username, password, and database. The database argument is optional. ”

在知道了sybase服务器所在的ip地址,开放服务的端口的条件下,可以动态构造第一个参数server么?
...全文
73 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pengshi001 2011-09-26
  • 打赏
  • 举报
回复
import threading
import pyodbc

class genericSybaseDB:
"""generic database"""
def __init__(self, dbInfo):
self.lock = threading.Lock()
self.dbInfo = dbInfo
self.db = None

def connect(self):
"connect to database"
try:
if self.dbInfo.has_key('database'):
database = self.dbInfo['database']
else:
database = ''

connstr = "DRIVER={FreeTDS};SERVER=%s;PORT=%d;DATABASE=%s;UID=%s;PWD=%s" \
%(self.dbInfo['server'], self.dbInfo['port'],\
database, self.dbInfo['user'], self.dbInfo['passwd'])

db = pyodbc.connect(connstr, autocommit=True)
self.conn = db
cursor = db.cursor()
self.db = cursor
return 'OK'
except:
import traceback
traceback.print_exc()
return 'ERROR'

这是我在linux底下的python代码,要的效果就是在windows下同样可以这样动态的构造出pyodbc所需要的参数。或者不一定使用odbc模式,只要能满足上述效果就行。

如果有解决方案的话,请给我个例子,拜谢了
pengshi001 2011-09-26
  • 打赏
  • 举报
回复
顶顶更健康
pengshi001 2011-09-22
  • 打赏
  • 举报
回复
没人知道么
pengshi001 2011-09-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 iambic 的回复:]
简单看了下那个文档,基本上没什么有用信息。可能根本不支持remote server。
换个其他的库吧,比如odbc的方式。或者这个SQL Anywhere的方式:
http://hynek.me/2011/02/django-and-remote-sybase-servers/
[/Quote]

用odbc可以在不配置dns数据源的情况下,动态构造connect需要的参数么?
iambic 2011-09-22
  • 打赏
  • 举报
回复
简单看了下那个文档,基本上没什么有用信息。可能根本不支持remote server。
换个其他的库吧,比如odbc的方式。或者这个SQL Anywhere的方式:
http://hynek.me/2011/02/django-and-remote-sybase-servers/

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧