前面好多人都提出了自己的意见,我这个门外汉也来说说,
本身我们单位已有一医院信息管理HIS系统,采用ORACLE数据库,它的做法是安装客户端时已经在进行数据库链接的设置,设置正确才能正常运行,而安装客户端的工作当然是开发者或者系统管理员做的,安装完成后,当后台数据库没打开情况下,客户端直接弹出后台数据库关闭提示,根本不提供任何更改机会,更不要说能看到链接字符串.....
鉴于此,链接字符串并不需要在客户端启动出现链接错误时更改,只是在安装时一次设置完成.以后需要更改链接密码时,重新安装客户端更改链接即可.
我想,不会有哪个管理员会频繁更改链接字符串吧?即使有也可以用下面的方法解决.普通操作人员根本不需要也不允许接触如此重要的数据机密...
BeforeConnectOuterDataSource事件
示例四
假定有一个名为“销售数据”远程数据源,默认的IP地址为119.119.120.120,因为服务器的调整,IP地址可能会发生变化,导致数据源无法连接。
为解决这个问题,可以在用户管理窗口增加一个名为IP的扩展用户属性,让用户在登录的时候,可以输入另一个IP地址,然后在BeforeConnectOuterDataSource事件中加入下面的代码:
If
e.Name = "销售数据" Then
Dim IP As String = e.User.ExtendedValues("IP") '获得用户输入的IP
If IP > "" '如果用户自己输入了IP
'则用用户输入的IP替换原来的IP
e.ConnectionString = e.ConnectionString.Replace("119.119.120.120", IP)
End If
End If
你也可以用另一种方法解决,在项目文件目录下创建一个ip.txt的文本文件,在该文件中输入最新的IP地址,并在BeforeConnectOuterDataSource事件中设置如下代码:
Dim ipFile As String = e.ProjectPath & "ip.txt"
If e.Name = "销售数据" Then
If Filesys.FileExists(ipFile) Then
Dim ip As String = FileSys.ReadAllText(ipFile)
e.ConnectionString = e.ConnectionString.Replace("119.119.120.120",ip)
End If
End If
[此贴子已经被作者于2009-3-20 9:36:20编辑过]