線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1876
推到 Plurk!
推到 Facebook!

如何在程序中修改database的属性Params的path值

答題得分者是:Mickey
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-06-11 16:44:09 IP:219.140.xxx.xxx 未訂閱
我试过下面的方法: form.database1.Close; form.Database1.Params.Values['path']:='c:\'; 可是,Params的值没变(delphi 7中),是不是还要设置什么属性?
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-06-11 17:50:22 IP:211.76.xxx.xxx 未訂閱
Session.GetAliasParams(Form.Database1.AliasName,Form.Database1.Params); form.database1.Params.Values['PATH'] :='c:\'; Session.ModifyAlias(Form.Database1.AliasName,Form.Database1.params); Session.SaveConfigFile;
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-06-11 21:24:04 IP:219.140.xxx.xxx 未訂閱
试过后出现错误:'session:session name missing' 我没用过session控件,不知道要怎么设置session的属性,能否 举个小例示范一下,谢谢!
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-06-11 21:47:36 IP:211.76.xxx.xxx 未訂閱
引言: 试过后出现错误:'session:session name missing' 我没用过session控件,不知道要怎么设置session的属性,能否 举个小例示范一下,谢谢!
1.Session是系統內定,不必下拉元件 2.若你的session是拉下來的元件,則要設定如session.SessionName:='Session1';
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-06-11 21:47:48 IP:218.32.xxx.xxx 未訂閱
path 改為大寫 PATH 試試.
  database1.Close;
  if Database1.Params.IndexOfName('PATH')=-1 then
    Database1.Params.Values['PATH']:='c:\'
  else
    Database1.Params.Add('PATH=c:\');
  database1.Open;
發表人 - Mickey 於 2003/06/11 21:50:30
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-06-11 22:19:25 IP:219.140.xxx.xxx 未訂閱
cmj的方法出错提示:’could not find object’,不用session控件则不能运行提示'undeclared identifier:'session'' Mickey的方法则是运行后,PATH值未变,不知何故
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-06-11 22:33:21 IP:211.76.xxx.xxx 未訂閱
procedure TForm1.Button1Click(Sender: TObject); begin   Database1.AliasName:='CSSTEMP'; //BDE要先建一Alias Type 為STANDARD Session.SessionName:='Sessino1'; Session.GetAliasParams(Form1.Database1.AliasName,Form1.Database1.Params); showmessage(form1.database1.Params.Values['PATH']); form1.database1.Params.Values['PATH'] :=Edit1.Text; Session.ModifyAlias(Form1.Database1.AliasName,Form1.Database1.params); Session.SaveConfigFile; showmessage(form1.database1.Params.Values['PATH'] ',' Form1.Database1.AliasName); end;
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-06-11 22:39:59 IP:218.32.xxx.xxx 未訂閱
我試正常啊 ?
  database1.Close;
  if Database1.Params.IndexOf('PATH')=-1 then
    Database1.Params.Values['PATH']:='c:\'
  else
    Database1.Params.Add('PATH=c:\');
  database1.Open;
  showmessage(Database1.Params.Values['PATH']);
你"PATH未變" 是如何試的 ? TDataBase.Params 值, 是會覆蓋掉 BDE Alias 參數的設定的.
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-06-11 23:04:40 IP:219.140.xxx.xxx 未訂閱
还是显示'could not find object',session1和database1有没有需要另外设置的? ”BDE要先建一Alias Type 為STANDARD”——是不是双击batabase1弹出的窗口中的 Driver name值设为STANDARD?
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-06-11 23:13:50 IP:218.32.xxx.xxx 未訂閱
1. 關掉 DELPHI 及 BDE 相關軟體 (如 SQL Explorer).
2. Run "BDE Administrator"
設定 'Configuration'->'system'->'INIT'->SHAREDMEMSIZE 放大(Default 2048), Exit and Save.
3. 重 Run Delphi 再試試.
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-06-11 23:14:10 IP:219.140.xxx.xxx 未訂閱
Mickey,真是不好意思,你是对的!我是在程序运行完了之后,去看database1.Params里的值,还是我之前输入的,我就以为没变,忘了是动态修改了
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-06-11 23:25:07 IP:219.140.xxx.xxx 未訂閱
对不起,能不能告诉我如何 Run "BDE Administrator",在菜单里我找不到"BDE Administrator",    原谅我很¥%#吧
echos
一般會員


發表:2
回覆:7
積分:1
註冊:2003-06-11

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-06-12 00:02:22 IP:219.140.xxx.xxx 未訂閱
找到了。    多谢各位的帮忙
系統時間:2024-05-17 1:23:36
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!