再次请教ADO如何连接dbf的问题?前提是不用ODBC

yfq101 2007-05-09 10:14:41
方式1:可以连,但打不开有索引文件的dbf文件
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\10.132.98.113\d\TASV\C01;Extended Properties=dbaSE 5.0;Persist Security Info=False

方式2:不能连,错误是“未发现数据源名称并且未指定默认驱动程序”
Provider=MSDASQL.1;Driver=Microsoft Visual Foxpro Driver;SourceType=DBF;DBQ=\\10.132.98.113\d\TASV\C01

方式3:不能连,这是在论坛搜索的,看起来最象,但不会用,id和密码怎么设置?
provider=VFPOLEDB.1;SourceType=DBF;Exclusive=No;data source=\\10.132.98.113\d\TASV\C01;Mode=ReadWrite|Share Deny None;User ID=myUID;Password=password;

请教各位,应该用怎样的连接字符串才可以呢??
...全文
456 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mdejtod 2007-05-14
  • 打赏
  • 举报
回复
Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+source+';Extended Properties=dBase 5.0;Persist Security Info=False '; //连接串.source 为dbf表所在文件夹.
至于删除记录好像没成功过,在USES单元中添加 BDE单元, 删除DBF表要调用到BDE函数
删除记录的函数:
table1.Close; //连接到DBF表
table1.Exclusive:=true;
table1.Open;
Check(DbiPackTable(Table1.DBHandle, Table1.Handle, nil, szDBASE, True)); //删除作了删除标记的记录
table1.Active:=false;
table1.Exclusive:=false;
table1.Active:=true;
我试过了,好像无法删除,祝你好运.呵呵...
Hank 2007-05-10
  • 打赏
  • 举报
回复
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\folder;Extended Properties=dBASE IV;User ID=Admin;Password=;
SKY1006 2007-05-10
  • 打赏
  • 举报
回复
要下载DBF的ADO驱动
zhao_yong 2007-05-10
  • 打赏
  • 举报
回复
同意樓上,如果做這種程序SQL比較好一點
仙侣步惊云 2007-05-10
  • 打赏
  • 举报
回复
使用ADO+ODBC可以正常连接dbf数据库.但有一个问题就是对数据集某记录进行删除操作时dbf中并不会真的删除而只是做删除标标记,要彻底删除需要调用dbf 的odbc中的函数.
dbf并不是完整的sql服务器,当记录量很大(如上G)和并发用户较多时会出现很多问题.建议使用sql anywhere替代.
yfq101 2007-05-09
  • 打赏
  • 举报
回复
用bde可以不用设置odbc吗?那要怎么用bde连接远程电脑的dbf表呢?

因为改公司的旧程序要连接远程的dbf,但已经找不到最新的源程序了,想不用配bde直接把连接放在字符串里面方便维护啊。
wubanganke 2007-05-09
  • 打赏
  • 举报
回复
你可以用BDE连dbf,用一个Table就搞定,在属性里设好就行

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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