如何将ADOConnection中连接数据库的配置通过.ini文件来修改 Provider=OraOLEDB.Oracle.1;Password=wwww;Persist Security Info=True;User ID=1702;Data Source=testdata如何保存为.ini文件以便在更改数据库名后不用修改程序,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 原来我做的一个程序是在程序起动时检查配置文件中的联接字符串键,如果存在且连接成功则运行程序,如果不成功就调用设置窗口进行设置原来用的是SQL2000,只检测SERVER,表是一个定了的名称 那就建一个 .Udl文件吧。 把每一个关键字分开来存吧 Provider=OraOLEDB.Oracle.1 Password=wwww ersist Security Info=True 从ini文件读出来的时候再拼回去咯 [DATA]CONN=瘝悏枦殟卢俺夯窖文稇嫐槏瀷殯攥殰妽枊喡寞殟寲寢攥殰妽枊嗊稇檺鹿灀寶莫寶嵾痘聦災稇枊枮撨紴嫗搻樎ツ獙氝瘝悳殯妽氝檺嵾瘝殢瀺毬文緤嫄攉崬憣摓嫐芦崐毮癁湐殝攥枀毬讼粕抹悕攲嫗嫋悜叨宦サ鼓獙氝簯湇啅嫋悜邫悕呋瀷灺篂搶毮珵樳垨嫍邷悡姃戇湊摀瀷枑戇垪殤邚悓寲潛毬篂搶?CONN_ZPT=瘝悏枦殟卢俺夯窖文癁寣垚崨率掀涛褪寞殟寲寢攥殰妽枊嗊稇檺芦崐毮獙殟叨宦尀亩憱嫋灀呒瀷灀悩聢噵厡潧澞粸嫗攥悐崪毬涵莫寶忒崘湚泭崥邫悕忒崥彏崥挛木妺愡珝瀾寭瀷毬珝姎寞灉敋嬤瑬厷滤掀赡◥崝寢瀷枑戇痘陆冻妇獙氝簯湇啅嫋悜邫悕呋瀷灺篂搶毮珵樳垨嫍邷悡姃戇湊摀瀷枑戇垪殤邚悓寲潛毬篂搶?看到乱码了没?这就是ini里的连接字符串密文了,呵呵你可以在程序里用adocontion.contionstring:=ini.readstring来读 db.ini[SQLList]IP="127.0.0.1"dbname="xxx"dbpwd="xxx"----------------------- filename:=ExtractFilePath(paramstr(0))+'db.ini'; myinifile:=TInifile.Create(filename); MySQLServerIP := myinifile.Readstring('SQLList','IP','') ; MySQLServerxx1 := myinifile.Readstring('SQLList','dbname','') ; MySQLServerxx2 := myinifile.Readstring('SQLList','dbpwd','') ; myinifile.Destroy;这样MySQLServerIP就是db.ini文件里的然后改一下Form_main.ADOConnectionSQLServer.Connected := false; Form_main.ADOConnectionSQLServer.ConnectionString := 'Provider=SQLOLEDB.1;Password='+MySQLServerxx2'+;Persist Security Info=True;User ID=userxxx;Initial Catalog=Tmydb;Data Source='+MySQLServerIP ; Form_main.ADOConnectionSQLServer.Connected := true; procedure TDM.DataModuleCreate(Sender: TObject);var Ini: TIniFile; User:string; PassWord:string; DataBase:string; DataSource:string;begin ini:=TInifile.Create(ExtractFilePath(application.ExeName)+'DaCzjl.ini'); //获取应用程序 路径下的ini文件 try User:=ini.ReadString('DataBase','User','sa'); PassWord:=ini.ReadString('DataBase','PassWord',''); DataBase:=ini.ReadString('DataBase','DataBase',''); DataSource:=ini.ReadString('DataBase','DataSource',''); finally ini.Destroy; end; ADOC.Connected:=false; ADOC.ConnectionString:='Provider=SQLOLEDB.1;Password='+PassWord+';Persist Security Info=True;User ID='+User+';Initial Catalog='+DataBase+';Data Source='+DataSource+''; try ADOC.Connected:=true; except on e:exception do begin showmessage('网络故障!请配置网络连接!'); exit; end; TWindowMedalplay控件问题 奇怪了,abort这里也会出错,各位大哥怎么解决呀 求使得图片移动代码 感谢 firetoucher(风焱) 热心帮助,请领分 ParamStr,setstring怎么用?详细一点,谢谢! 谁有DELPHI的MXoutlook皮肤控件发给我一份!! 请问怎么可以获得Dll的路径? 请高手进来帮忙,来者给分! 非常问题快抢分!!!!! 谁能把WinAPI的知识拷贝一份给我? 程序自已删除自已 怎样把一个文本文件倒入SQL Server数据库的表中,马上结帖
原来用的是SQL2000,只检测SERVER,表是一个定了的名称
Provider=OraOLEDB.Oracle.1
Password=wwww
ersist Security Info=True
从ini文件读出来的时候再拼回去咯
CONN=瘝悏枦殟卢俺夯窖文稇嫐槏瀷殯攥殰妽枊喡寞殟寲寢攥殰妽枊嗊稇檺鹿灀寶莫寶嵾痘聦災稇枊枮撨紴嫗搻樎ツ獙氝瘝悳殯妽氝檺嵾瘝殢瀺毬文緤嫄攉崬憣摓嫐芦崐毮癁湐殝攥枀毬讼粕抹悕攲嫗嫋悜叨宦サ鼓獙氝簯湇啅嫋悜邫悕呋瀷灺篂搶毮珵樳垨嫍邷悡姃戇湊摀瀷枑戇垪殤邚悓寲潛毬篂搶?CONN_ZPT=瘝悏枦殟卢俺夯窖文癁寣垚崨率掀涛褪寞殟寲寢攥殰妽枊嗊稇檺芦崐毮獙殟叨宦尀亩憱嫋灀呒瀷灀悩聢噵厡潧澞粸嫗攥悐崪毬涵莫寶忒崘湚泭崥邫悕忒崥彏崥挛木妺愡珝瀾寭瀷毬珝姎寞灉敋嬤瑬厷滤掀赡◥崝寢瀷枑戇痘陆冻妇獙氝簯湇啅嫋悜邫悕呋瀷灺篂搶毮珵樳垨嫍邷悡姃戇湊摀瀷枑戇垪殤邚悓寲潛毬篂搶?
看到乱码了没?这就是ini里的连接字符串密文了,呵呵
你可以在程序里用adocontion.contionstring:=ini.readstring来读
[SQLList]
IP="127.0.0.1"
dbname="xxx"
dbpwd="xxx"
-----------------------
filename:=ExtractFilePath(paramstr(0))+'db.ini';
myinifile:=TInifile.Create(filename);
MySQLServerIP := myinifile.Readstring('SQLList','IP','') ;
MySQLServerxx1 := myinifile.Readstring('SQLList','dbname','') ;
MySQLServerxx2 := myinifile.Readstring('SQLList','dbpwd','') ;
myinifile.Destroy;
这样MySQLServerIP就是db.ini文件里的
然后改一下
Form_main.ADOConnectionSQLServer.Connected := false;
Form_main.ADOConnectionSQLServer.ConnectionString := 'Provider=SQLOLEDB.1;Password='+MySQLServerxx2'+;Persist Security Info=True;User ID=userxxx;Initial Catalog=Tmydb;Data Source='+MySQLServerIP ;
Form_main.ADOConnectionSQLServer.Connected := true;
var
Ini: TIniFile;
User:string;
PassWord:string;
DataBase:string;
DataSource:string;
begin
ini:=TInifile.Create(ExtractFilePath(application.ExeName)+'DaCzjl.ini'); //获取应用程序
路径下的ini文件
try
User:=ini.ReadString('DataBase','User','sa');
PassWord:=ini.ReadString('DataBase','PassWord','');
DataBase:=ini.ReadString('DataBase','DataBase','');
DataSource:=ini.ReadString('DataBase','DataSource','');
finally
ini.Destroy;
end;
ADOC.Connected:=false;
ADOC.ConnectionString:='Provider=SQLOLEDB.1;Password='+PassWord+';Persist Security Info=True;User ID='+User+';Initial Catalog='+DataBase+';Data Source='+DataSource+'';
try
ADOC.Connected:=true;
except
on e:exception do begin
showmessage('网络故障!请配置网络连接!');
exit;
end;