ASP中如何连接.DBF库,急!!100分!

mathsword 2003-03-15 08:50:49
怎样连接dbf数据库?
我按照网上的做法:
1)
Set conn = Server.CreateObject("ADODB.Connection")
conn.open"sql"
  'Driver="Driver={Microsoft Visual FoxPro Driver};"
  'SourceType = "SourceType=DBF;"
  'DBPath = "SourceDB=" & Server.MapPath( "mdb" )  
  'conn.Open Driver & SourceType & DBPath
2)
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Visual FoxPro Tables"
Set RS = Conn.Execute("SELECT * FROM demo")

都连不上!
高手请指教阿!
...全文
163 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
超级大笨狼 2003-05-16
  • 打赏
  • 举报
回复

Set conn = Server.CreateObject("ADODB.Connection")

conn.Open "Provider=MSDASQL.1;Persist Security Info=False;Data Source=hospital"

set rs=server.createobject("adodb.recordset")
sql="select * from customer"
rs.Open sql,conn,3,2
mathsword 2003-03-15
  • 打赏
  • 举报
回复
to:holywars(David)
不行!出现如下错误!


Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

/cs/asss.asp,行12
mathsword 2003-03-15
  • 打赏
  • 举报
回复
我知道,可是我不用dsn
不过我现在知道怎么连了

用你的方法很好,可是那是对dsn来说的
holywars 2003-03-15
  • 打赏
  • 举报
回复
dim conn
dim connstr
on error resume next
connstr="DBQ="+server.mappath("test.DBF")+";DefaultDir=;DRIVER={Microsoft Visual FoxPro Driver (*.DBF)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
mathsword 2003-03-15
  • 打赏
  • 举报
回复
怎么没人进来阿!!!
er1981 2003-03-15
  • 打赏
  • 举报
回复
我的机器没有VF如果有,我也照这样连,他可以自动生成串,你可以自己看的!
mathsword 2003-03-15
  • 打赏
  • 举报
回复
不用dsn连结dbf数据库

难道没有人会吗?
mathsword 2003-03-15
  • 打赏
  • 举报
回复
另外,不是设置dsn的那种方式
mathsword 2003-03-15
  • 打赏
  • 举报
回复

to:
er1981(菜鸟)

大哥,你的方法很不错阿,可是就是那个连结字符串怎么写阿

你能教教我吗?当然是dbf数据库

谢了先
er1981 2003-03-15
  • 打赏
  • 举报
回复
交你一个方法自动生成连接数据库串的方法,你打开记事本,然后保存成一个1.udl文件然后你去打开你刚才保存的1.udl文件,就会出现数据库连接属性框,然后您按照提示的步骤,连接你的数据库,并测试如果成功,您用您的写字板打开你的1.udl文件(一定是写字板,否则出乱码),你就可以看到生成的数据库连接串! 如果这个串还有问题的话,那就是你其他程序的原因了啊!自己试试吧! 98%应该好使的!
mathsword 2003-03-15
  • 打赏
  • 举报
回复
to:
annkie(活着便精彩)
<%
set conn2=server.createobject("adodb.connection")
connstr2="PROVIDER=MSDASQL;DRIVER={Microsoft Visual Foxpro Driver};SourceDB="&curpath&";SourceType=DBF"
conn2.open connstr2
set rs=server.createobject("adodb.recordset")
sql2="select * from demo"
rs.open sql2,conn2,1,4



for i = 0 to rs.fields.count-1
response.write rs.fields(i).name & "<br>" & i
next
response.write time
if rs.bof and rs.eof then
response.write time & "1009"
else
response.write time & "-009"
end if
response.end

rs.close
%>



Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

[Microsoft][ODBC 驱动程序管理器] 驱动程序的 SQLSetConnectAttr 失败

/cs/index4.asp,行4
mathsword 2003-03-15
  • 打赏
  • 举报
回复
to:
tanguangzhang(心碎男孩)

大哥,我要连结的是dbf,不是mdb
mathsword 2003-03-15
  • 打赏
  • 举报
回复
<%
dim conn,S1
dim connstr
'on error resume next
connstr="DBQ="+server.mappath(".\")+";DefaultDir=;DRIVER={Microsoft Visual FoxPro Driver (*.DBF)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
response.write time
s1="select * from demo"
's1="demo.dbf"
set Rs = Server.CreateObject("ADODB.Recordset")
rs.open s1,conn,2,2

for i = 0 to rs.fields.count-1
response.write rs.fields(i).name & "<br>" & i
next
response.write time
if rs.bof and rs.eof then
response.write time & "1009"
else
response.write time & "-009"
end if
response.end

rs.close
%>
'-----------------------------------------------------
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

/cs/index4.asp,行7
yanchao101 2003-03-15
  • 打赏
  • 举报
回复
可以做成ODBC数据源试一下
awaysrain 2003-03-15
  • 打赏
  • 举报
回复
贴代码看看吧
怎么提示缺少 'End'
eithur 2003-03-15
  • 打赏
  • 举报
回复
行吗?
annkie 2003-03-15
  • 打赏
  • 举报
回复
ADO方式参考如下:
set conn2=server.createobject("adodb.connection")
connstr2="PROVIDER=MSDASQL;DRIVER={Microsoft Visual Foxpro Driver};SourceDB="&curpath&";SourceType=DBF"
conn2.open connstr2
set rs2=server.createobject("adodb.recordset")
sql2="select * from jyjh2003"
rs2.open sql2,conn2,1,4
hblhshb 2003-03-15
  • 打赏
  • 举报
回复
用数据源应该很简单的.open一下就行了.
tanguangzhang 2003-03-15
  • 打赏
  • 举报
回复
curDir = Server.MapPath("WEB.mdb")
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & curDir

Set oRs = Server.CreateObject("ADODB.Recordset")
Set oRs.ActiveConnection = oConn
oRs.Source = "select * from Sysinfo"
oRs.CursorType = 3 'adOpenKeyset
oRs.LockType = 3 'adLockOptimistic
oRs.Open
oRs.AddNew
oRs("字段1")="要加的内容"
……
oRs.UpDate
oRs.Close
Set oRs=nothing
oConn.Close
Set oConn=nothing
stefli 2003-03-15
  • 打赏
  • 举报
回复
应该是你的代码中有其它的错误吧?
你把其它代码也贴出来看看!!
加载更多回复(2)

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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