我现在有一个access数据库文件,1.mdb,放在c:\1.mdb
我想在程序中动态连接,就使用了组件:TADOConnection,TADOTable,首先在TADOTable中的属性栏中设置了Connection为TADOConnection1
然后我在 procedure Tmainform.FormCreate(Sender: TObject) 中写:
Tmainform.ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=c:\1.mdb;Persist Security Info=False';
Tmainform.ADOConnection1.Connected :=True; 但是运行的时候,有报错:Access violation at address 0049D77B in module 'Project1.exe',Read of address 00000344 这是什么原因那?'
我想在程序中动态连接,就使用了组件:TADOConnection,TADOTable,首先在TADOTable中的属性栏中设置了Connection为TADOConnection1
然后我在 procedure Tmainform.FormCreate(Sender: TObject) 中写:
Tmainform.ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=c:\1.mdb;Persist Security Info=False';
Tmainform.ADOConnection1.Connected :=True; 但是运行的时候,有报错:Access violation at address 0049D77B in module 'Project1.exe',Read of address 00000344 这是什么原因那?'
//Tmainform.ADOConnection1.Connected :=True;
Read of address 00000330
我是看帖子,都这么说,可是我自己用的时候就出错了,
我发现好像只要我再程序中给TADOConnection组件的ConnectString赋值就会出错,那个connected赋值也不行,还有就是给TADOTable的Active属性也不能赋值,只能在delphi的环境中设属性。
+'database\MarketManager.mdb;Persist Security Info=False';你用这个啊!
才从我程序拷出来的!
这一句可以不要 我这么写都不会错啊
if Adoconn1.ConnectionString = '' then
Adoconn1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=c:\1.mdb;Persist Security Info=False';
这样好像在静态ADOTable时都不可以用Provider=Microsoft.Jet.OLEDB.4.0,只能用ODBC连,怎么回事呢?
我的连接方法是设置.udl文件,很方便的
这样好像在静态ADOTable时都不可以用Provider=Microsoft.Jet.OLEDB.4.0,只能用ODBC连,怎么回事呢?
两各都是可以的,你自己试试看就知道了。另外Adotable确实有问题,我在用的时候也经常出现问题,有时候在Sqlserver下可以,但连接其他数据库就会出现问题。