一个数据库连接的问题

ycjj 2004-10-22 08:46:27
我用下列的设定来连接数据库
Provider=SQLOLEDB.1;Password=pass;Persist Security Info=True;User ID=user;Initial Catalog=Test;Data Source=Test

在连接数据库成功后,程序中的数据库操作都使用此连接,一直使用都很正常。
可近日我发现,如果我进入程序,在连接成功后如果长时间不执行数据库操作的话,比如过几十分钟后再执行数据库操作,会发生数据库连接的错误,哪位知道是什么原因?如果我想数据库连接一直可用的话,应该怎么做?
...全文
123 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
DerryZhang 2004-10-22
还没遇到过这样的问题
帮你up
回复
haohaohappy 2004-10-22
Data Source改为用IP地址
回复
ycjj 2004-10-22
Persist Security Info 的含义我找到了,形象的说就是连接之后是否可以通过这个连接取得user和pass,这和我的问题没有什么关系。

我还是不知道我的问题怎么解决。
回复
ycjj 2004-10-22
我查了Persist Security Info 的含义如下

当该值设置为 false 或 no(强烈推荐)时,如果连接是打开的或者一直处于打开状态,那么安全敏感信息(如密码)将不会作为连接的一部分返回。重置连接字符串将重置包括密码在内的所有连接字符串值。可识别的值为 true、false、yes 和 no。

这是什么意思呢?
回复
ycjj 2004-10-22
我用本地MSDE数据库,我看了两位的代码,
和我用的区别在于
Persist Security Info=False

这就是我用的连接,几十分钟后就不可用的原因吗?为什么呢?
回复
Andy__Huang 2004-10-22
有關連接數據庫:
本地的
ConnectionString = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=northwind;Data Source=yang"

遠程的
ConnectionString = "driver={SQL Server};server=218.62.*.* ;uid=sa;pwd=;ConnectionTimeout=0;database=northwind"
回复
Andy__Huang 2004-10-22
Private Sub Form_Load()
Dim strConn As String
Dim pubConn As New ADODB.Connection
Dim rsTable As New ADODB.Recordset
Dim strSQL As String

'Access 2000的連接
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\North.mdb;Persist Security Info=False"
'SQL Server2000的連接
strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=develop; password=12345;Data Source=ServerName"
pubConn.Open strConn

rsTable.CursorLocation = adUseClient
strSQL = "select * from TableName"
rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = rsTable

End Sub
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告