PB9程序代码中,在CONNECT;一个SQLserver数据库时,如果数据库不存在(数据服务器已关闭,或服务器名称写错)PB9代码中的CONNECT要很常时

my_yinger 2005-05-26 02:24:00
PB9程序代码中,在CONNECT;一个SQLserver数据库时,如果数据库不存在(数据服务器已关闭,或服务器名称写错)PB9代码中的CONNECT要很常时间才返回没有连接上数据库的信息,时间太长了,如何能缩短(或自定义)CONNECT连接不上数据库所用的时间?
...全文
374 42 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
42 条回复
切换为时间正序
请发表友善的回复…
发表回复
lovemoreh 2005-07-20
  • 打赏
  • 举报
回复
我指的是ms sql server连接。
pjy998 2005-07-20
  • 打赏
  • 举报
回复
// Profile MIS_CCT
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=MIS_CCT;UID=;PWD=',LoginTimeOut=5"


// Profile OLETEST
SQLCA.DBMS = "OLE DB"
SQLCA.LogPass = <********>
SQLCA.LogId = "sa"
SQLCA.AutoCommit = False
SQLCA.DBParm = "PROVIDER='SQLOLEDB',DATASOURCE='PC-DES-511',PROVIDERSTRING='database='master'',TIMEOUT=5"


上面分別是ODBC和OLE的連接。
my_yinger 2005-07-20
  • 打赏
  • 举报
回复
已经用 OLE Microsoft OLE DB 连接,

但PB9的Preview中给出的语法中的SQLCA.DBParm = 是:

SQLCA.DBParm = "PROVIDER='SQLOLEDB',DATASOURCE='服务器名',PROVIDERSTRING='database=数据库名',TIMEOUT=数值"

这与楼上说的
sqlca.dbparm="LoginTimeOut=5"

SQLCA.DBParm = "DBGetTime=5"
都是不符合的啊
嘘嘘兔 2005-07-20
  • 打赏
  • 举报
回复
Provider 选择sqloledb;Data Source 选择服务器机器名;Location可以为空,然后在extended properties中输入database='数据库名',还有用户名和密码
my_yinger 2005-07-20
  • 打赏
  • 举报
回复
re: lovemoreh(爱比恨多)

先说下是那种连接方式
lovemoreh 2005-07-20
  • 打赏
  • 举报
回复
其中,5,指5秒。
lovemoreh 2005-07-20
  • 打赏
  • 举报
回复


SQLCA.DBParm = "DBGetTime=5"

试试。
my_yinger 2005-07-20
  • 打赏
  • 举报
回复
re: lovemoreh(爱比恨多)

我试了,在是ms sql server连接中
SQLCA.DBParm = "DBGetTime=5"
不起作用
my_yinger 2005-07-19
  • 打赏
  • 举报
回复
re: tuzhaoping9822(涂兆平)

请问,用OLE Microsoft OLE DB 连接SQL2000数据库,New Profile...接下来的,Provider ,Data Source ,Location 都填写什么?
tuzhaoping9822 2005-07-02
  • 打赏
  • 举报
回复
那肯定是有区别的了,用直连的话是要捆绑文件pbmss80.dll,而用OLE Microsoft OLE DB连接时要捆绑文件pbole80.dll,我用的是PB8.0,相应的版本可能是pbole90.dll.
lishijin 2005-07-02
  • 打赏
  • 举报
回复
tuzhaoping9822(涂兆平) 的方法有效,但要请教一下:用MSS Microsoft SQL Server连接和用OLE Micrisoft OLE DB连接,在系统发布是捆绑的dll文件有区别吗?
my_yinger 2005-07-01
  • 打赏
  • 举报
回复
只会用MSS Microsoft SQL Server不会用OLE Micrisoft OLE DB连接啊,

如何用OLE Micrisoft OLE DB连接SQL2000数据库?
tuzhaoping9822 2005-07-01
  • 打赏
  • 举报
回复
PB中:Tools -> Database Painter 或直接按shift + F7打开数据库面版;
右键单击OLE Microsoft OLE DB ->单击 New Profile...接下来就和直连设置差不多
注意在Extended框中输入你想要连接的数据库:database='master'
tuzhaoping9822 2005-06-30
  • 打赏
  • 举报
回复
你用OLE DB连接就可以设置Timeout了
my_yinger 2005-06-29
  • 打赏
  • 举报
回复
sqlca.dbparm="LoginTimeOut=5"是五分钟还是五秒啊。我试验了,不行啊。我用的是是PB9和SQLserver2000数据库
mordensir 2005-06-21
  • 打赏
  • 举报
回复
上面的都写错误了,应该是 LoginTimeOut=时间 ,我用过的
lishijin 2005-06-21
  • 打赏
  • 举报
回复
也不行啊,请指点
sbks 2005-06-21
  • 打赏
  • 举报
回复
楼上说的没错:
sqlca.dbparm="LoginTimeOut=5"

保证可行。
菜菜 2005-06-20
  • 打赏
  • 举报
回复
我也有这个问题,不知怎么解决
flyerlxg 2005-06-20
  • 打赏
  • 举报
回复
这样设置没有作用。
加载更多回复(22)

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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