可以先用connectString链接一个数据,connected设为false,这时在connectString中有一串 配置字符串,中间有加载数据库的一段字符串,通过程序的方法动态改变数据的名称和位置如下 adoconnection.Connected:=false; adoconnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0; Data Source='+tmpstr+';Persist Security Info=False'; adoconnection.Connected:=true;tmpstr就是数据库名(包括路径),可以使用OpenFileDialog来选择想链接的数据库 可以了吗,行就给分
uses ADOConEd;//////////试试吧////// ADOConnection1.Close; ADOConnection1.ConnectionString := ConnectionString.Text; if EditConnectionString(ADOConnection1) then begin ConnectionString.Text := ADOConnection1.ConnectionString; ConnectionStringClick(Sender); end;
procedure TDmForm.DataModuleCreate(Sender: TObject);
var
inif :Tinifile;
Fstr,FDataBase,fst,Fserver:String;
begin
if ADOConnection1.Connected then ADOConnection1.Close;
{*** 读取INI文件中的ODBC配置 ***}
fst :=ChangeFileExt(Application.ExeName,'.Ini');
Inif:=TIniFile.Create(fst);
with Inif do
begin
FDataBase :=Trim(ReadString('ODBC配置','数据库名','TESTDATA'));
FServer :=Trim(ReadString('ODBC配置','服务器名','(local)'));
free;
end;
Fstr:='Provider=SQLOLEDB.1;Password=test;Persist Security Info=True;User ID=test;';
Fstr:=Fstr+'Initial Catalog='+FDataBase+';Data Source='+FServer;
ADOConnection1.ConnectionString:=Fstr;
IfContinue:=False;
try
ADOConnection1.Open;
except
showmessage('无法连接到服务器的数据库,程序无法运行!');
exit;
end;
end;
HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI有哪些子键就知道了。
明白了吗?给分吧!
我的意思是说:在用adoconnection连接数据库时,系统会弹出一个建立connectString的窗体,用户可以通过他很方便的设置connectString,我想在我的程序中直接使用这个类似向导的东西,
应该怎么做?(因为我的数据源不确定,需要用户自行选择)
配置字符串,中间有加载数据库的一段字符串,通过程序的方法动态改变数据的名称和位置如下
adoconnection.Connected:=false;
adoconnection.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;
Data Source='+tmpstr+';Persist Security Info=False';
adoconnection.Connected:=true;tmpstr就是数据库名(包括路径),可以使用OpenFileDialog来选择想链接的数据库
可以了吗,行就给分
ADOConnection1.Close;
ADOConnection1.ConnectionString := ConnectionString.Text;
if EditConnectionString(ADOConnection1) then
begin
ConnectionString.Text := ADOConnection1.ConnectionString;
ConnectionStringClick(Sender);
end;