如何设置对VB数据库连接的动态路径
我个人因为经常作一些数据库方面的程序,对于程序间如何与数据库进行接口的问题之烦是深有体会,因为VB在数据库链接的时候,一般是静态,即数据库存放的路径是固定的,如用VB的DATA,adodc,DataEnvironment等到作数据库链接时,如果存放数据库的路径被改变的话,就会找不到路经,真是一个特别烦的事。 一、用data控件进行数据库链接,可以这样: 二、利用adodc(ADODataControl)进行数据库链接: 三、利用DataEnvironment进行数据库链接 四、利用ADO(ActiveXDataObjects)进行编程: 以上代码在VB6,win98上运行通过,如有问题请发邮件给我:
笔者的解决方法是利用app.path来解决这个问题。
在form_load()过程中放入:
privateform_load()
DimstrAsString'定义
str=App.Path
IfRight(str,1)<>"\"Then
str=str "\"
EndIf
data1.databasename=str&"\数据库名"
data1.recordsource="数据表名"
data1.refresh
subend
这几句话的意为,打开当前程序运行的目录下的数据库。
你只要保证你的数据库在你程序所在的目录之下就行了。
privateform_load()
DimstrAsString'定义
str=App.Path
IfRight(str,1)<>"\"Then
str=str "\"
EndIf
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"\tsl.mdb"
Adodc1.ConnectionString=str
Adodc1.CommandType=adCmdText
Adodc1.RecordSource="select*fromtable3"
Adodc1.Refresh
endsub
可在过程中放入:
OnErrorResumeNext
IfDataEnvironment1.rsCommand1.State<>adStateClosedThen
DataEnvironment1.rsCommand1.Close'如果打开,则关闭
EndIf
'i=InputBox("请输入友人编号:","输入")
'Ifi=""ThenExitSub
DataEnvironment1.Connection1.OpenApp.Path&"\userdatabase\tsl.mdb"
DataEnvironment1.rsCommand1.Open"select*fromtable3where编号='"&i&"'"
'SetDataReport2.DataSource=DataEnvironment1
'DataReport2.DataMember="command1"
'DataReport2.show
endsub
建立连接:
dimconnasnewadodb.connection
dimrsasnewadodb.recordset
dimstr
str=App.Path
IfRight(str,1)<>"\"Then
str=str "\"
EndIf
str="Provider=Microsoft.Jet.OLEDB.3.51;PersistSecurityInfo=False;DataSource="&str&"\tsl.mdb"
conn.openstr
rs.cursorlocation=aduseclient
rs.open"数据表名",conn,adopenkeyset.adlockpessimistic
用完之后关闭数据库:
conn.close
setconn=nothing
作者:张振兴
E_mail:xingyun0615@sina.com
- 最新文章
- VB5.0中远程数据库的访问[04-15]
- 直接使用ODBCAPI访问数据库的VB程序[04-15]
- VB5中远程数据库的访问[04-15]
- 显示数据库记录[04-15]
- 加强客户端约束增强数据库完整性[04-15]
- 查找替换所选字符[04-15]
- 相关文章
- VB5.0中远程数据库的访问[04-15]
- 直接使用ODBCAPI访问数据库的VB程序[04-15]
- VB5中远程数据库的访问[04-15]
- 显示数据库记录[04-15]
- 加强客户端约束增强数据库完整性[04-15]
- 用数据库保存VB程序的用户设置[04-15]
