ADO问题 非技术类还有100分,快来拿(50分)

  • 主题发起人 主题发起人 magy
  • 开始时间 开始时间
M

magy

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在想用ADO连接一个目录下的Visual FoxPro数据表 userID='',password='',
然后对这些表作一些查询、修改的操作。我是不时一定要先在ODBC配置一个数据源,
然后才能在ADOconnetion中连接她?

如果是这样,那ADO和ODBC有什么不一样,他也得需要ODBC配置?

我刚刚开始接触ADO请多给一些信息!

可惜刚开始没有注意到发到了非技术类,两边的问题一个,我回把两边的分数一起给
 
建议买本李维的 <<delphi5.x ado/mts/com+ 高级程序设计篇>>
对ado有非常详细的说明.
 
我现在着急想用,能不能指点一二
 
不用啊。delphi有例子c:/program files/Borland/Delphi5/Demo/Ado/Adotest

 
我是想在程序里直接写connection string 比如
Provider=MSDASQL.1;Persist Security Info=False;Data Source=myfoxpro

myfoxpro是我自己在ODBC例添加的。我现在想问,如果我想用程序在ODBC中添加一个
我需要的数据源myfoxpro,让她的provider 是Microsoft Visual Foxpro, DataBase Type
是free direction, path指向我需要的路径,怎么班?
或者我就不需要设置以上这些,直接设置Connection String 使就不需要Data Souce=
myfoxpro.

 
用ADO最好使用它的专有数据库驱动,

哪个ODBC的连接是为了在缺少相应的驱动时,
能共享ODBC的。

你可用

Provider=MSDataShape.1;Persist Security Info=False;
Data Source=H:/程序/11/DB/HereMed.mdb;Data Provider=
Microsoft.Jet.OLEDB.4.0

在作商用软件时如非必要可千万不要用ODBC的驱动,
我就让它差点给害死过一次,速度慢的没法用,
而且还问题多多。

 
楼上的各位都说的很明的了!
你只要用一个ADOQUERY控件!
设置它的connection string 属性就行!
很容易!是个向导!
设好后!你下次也可把connection string 保存下来放到程序中去增值!
这样你就可动态的连接任何一个文件啦!
 
程云:
你说的 “Provider=MSDataShape.1” MSDataShape.1是什么? 我这边好像没有。
还有你说的可能只能访问 Microsoft Access 数据库, 能访问 Visual FoxPro吗?
 
访问Access数据库时也有一个问题。
就是当设置了数据库密码时,ADO就无法连接成功。
哪位大虾有解决之道。
 
您再使用ADO时,最好不要使用ODBC作为中间的链接,效率奇低,您还是用一个ADOConnection
,在connectionstring中直接输入链接字符串,效率要好些。而且也很方便。记得,如果您
在局域网中使用,可以设置为保持链接,如果您要写多层应用,则不要保持链接。
另外,建议您用ADODataSet,不要使用ADOQuery,ADOTable,这两个用BUG。他们在超时设置上
没有起作用。这样,当你有大量的查询时,就容易处错。
 
liaotw:
connectionstring中直接输入链接字符串中的Data Source如果直接写成
Data Source=rive:/path
就会提示错误: 没有找到数据源。
怎么班?
 
程云说的已经很清楚了。
如果有错误,那么是否您那儿在权限设置上有问题?
 
不好意思,能不能告诉我

程云
Provider=MSDataShape.1;Persist Security Info=False;
Data Source=H:/程序/11/DB/HereMed.mdb;Data Provider=
Microsoft.Jet.OLEDB.4.0

中的
1。MSDataShape.1是什么,
2。Data Provider=Microsoft.Jet.OLEDB.4.0 能驱动Visual Foxpro 马?
3。.mdb 不是Aceess 数据库吗?
我现在想用的是 Visual FoxPro 怎么班?
请你说的详细一点


 
<a href="http://www.delphibbs.com/delphibbs/DispQ.asp?LID=466930">看看这个问题</a>
也许会有帮助。
 
to 地平线:
可以连接有密码的ACCESS数据库,
没问题的,我都是这样用的。
 
to magy:

一、哪是ADO又一种JET引擎,可在ADO的驱动表中找到它的。
它有别于JET的最明显一点就是支持ADO的Shape语句,
你可参见我的问题中的
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=229383

二、它不能驱动VF的数据库,因为JET是为ACCESS定作的,只能用于ACCESS。
最好把数据导入到ACCESS或是其它数据库中用。
要想用VF的数据库,只有再通过ODBC连了。只有这样问题多多。
好再VF数据库的数据量也不会太多,将就也可以用了。
ADO不支接支持VF数据库。

三、mdb 是Aceess 数据库,我们公司使用文件型数据库时,都用的是ACCESS。


to 地平线:
有密码连接的数据库可如下写法:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:/aaaa.mdb;Persist Security Info=False;Jet OLEDB:Database Password=aa1111

Jet OLEDB:Database Password=aa1111
这就是哪个写入密码的地方,

"aa1111"为数据库密码。
 
程云:
我想,要把Visual FoxPro数据库转换成Access数据库或其他数据库也得些能读出
Visual FoxPro一样要通过ADO,所以我想问:
1。若我现在想通过程序实现我在ODBC Administrator中设置一个名为
MyFoxpro的数据源一像的功能。
在ODBC Administrator中添加新的数据源的步骤如下:
选择数据源驱动程序为Microsoft Visual Foxpro Driver, 数据源的名称为
MyFoxPro, DataBase Type选择Free Table Direction. Path 选择存放Visual FoxPro
数据库的路径。
请问:我怎么能通过程序实现?请说详细一一点,谢谢!
 
多人接受答案了。
 
在程序中完成ADO联接串的生成向导,
可用如下程序。
useu ADOConEd;

procedure TSystemFrm.sbtConEditClick(Sender: TObject);
begin
if AdoConn.Connected then AdoConn.Connected:=False;
AdoConn.ConnectionString:=edtConStr.Text;
if EditConnectionString(AdoConn) then
edtConStr.Text:=AdoConn.ConnectionString;
end;

而ODBC哪一步的设置可直接调用一个叫odbcad32.exe的文件就可,
此文件在 /windows/system 可/winnt/system32中放着。
 
后退
顶部