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

請問Application Role(應用程式角色)的問題

缺席
plot1234
一般會員


發表:5
回覆:7
積分:2
註冊:2002-03-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-07-10 10:34:28 IP:210.202.xxx.xxx 未訂閱

請問各位先進,

程式碼如下:

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('EXEC sp_setapprole ''AP_Role'', ''Test''');
ADOQuery1.ExecSQL;
ADOConnection1.Connected:=False;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select top 10 * from TestTable');
ADOQuery1.Open;

end;

如果我先按下BUTTON1再按下BUTTON2 就會出現連線失敗

不知道這樣的問題該如何解決

謝謝

borland_delphi70
中階會員


發表:8
回覆:50
積分:51
註冊:2002-12-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-07-12 01:16:48 IP:220.132.xxx.xxx 未訂閱

===================引 用 文 章===================

請問各位先進,

程式碼如下:

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('EXEC sp_setapprole ''AP_Role'', ''Test''');
ADOQuery1.ExecSQL;
//ADOConnection1.Connected:=False; //利用sp_setapprole 啟動應用程式角色之後,該角色會保持作用中,直到使用者從伺服器中斷連接執行sp_unsetapprole
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select top 10 * from TestTable');
ADOQuery1.Open;

end;

如果我先按下BUTTON1再按下BUTTON2 就會出現連線失敗

不知道這樣的問題該如何解決

謝謝

plot1234
一般會員


發表:5
回覆:7
積分:2
註冊:2002-03-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2006-07-20 09:18:40 IP:210.202.xxx.xxx 未訂閱

謝謝您的回答,不過我在sql裡面找不到sp_unsetapprole這個預儲程序,我使用的是ms sql 2000

現在的問題很怪,因為我執行ADOConnection1.Connected:=False,理論上應該角色就不作用了,

但是當我再 ADOConnection1.Connected:=True;然後open一個query,並不是說角色不作用或是角色仍然作用,

而是直接連線失敗,感覺上是ole db的connecting pooling在作怪,但是卻找不到解決的方法,

再麻煩各位先進了,謝謝


===================引 用 文 章===================

===================引 用 文 章===================

請問各位先進,

程式碼如下:

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('EXEC sp_setapprole ''AP_Role'', ''Test''');
ADOQuery1.ExecSQL;
//ADOConnection1.Connected:=False; //利用sp_setapprole 啟動應用程式角色之後,該角色會保持作用中,直到使用者從伺服器中斷連接執行sp_unsetapprole
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ADOConnection1.Connected:=True;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select top 10 * from TestTable');
ADOQuery1.Open;

end;

如果我先按下BUTTON1再按下BUTTON2 就會出現連線失敗

不知道這樣的問題該如何解決

謝謝

系統時間:2024-05-19 4:50:21
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!