PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
473 | 99/01/11 05:20:16 | RE(1):助けて下さい By Taka |
472 | 99/01/08 17:25:36 | 助けて下さい By Oさん |
カテゴリ:その他
日付:1999年01月11日 05:20 発信者:Taka
題名:RE(1):助けて下さい
Oさん はじめまして。Takaです。
>今日初めて、参加させて頂きます。うまく行かなくて、ハマってる事がありますので、知ってる方教えて下さい。
>Oracle7.3を使ってます。
>ALTER SYSTEM KILL SESSIONコマンドをアプリケーション内で発行する方法です。
>データウィンドウにシステムテーブルの\"sys.v_$session\"を割り付けて、そこから、sidとserを取得して実現したい
>のです。スクリプト内では、ALTER SYSTEM?コマンドは埋め込めないし、PREPAREとEXECUTEでもうまくいかないので
>す。何方か良い知恵を貸して下さい!!
CREATE xxx や ALTER xxx などのDML文は、たいてい動的SQL・構文1を使います。
string sql
sql = \"ALTER SYSTEM KILL SESSION \'\" + String(sid#) + \",\" + String(ser#) + \"\'\"
EXECUTE IMMEDIATE :sql USING SQLCA ;
if SQLCA.SQLCode = 0 then
*** OK ***
else
*** エラー処理 ***
end if
※ USING SQLCA は省略可能です。
(トランザクションにSQLCA以外の変数を使っている時はその変数を指定)
※ ALTER SYSTEM コマンドは、DBA権限を持つユーザーでログインしていないとダメです。
(V$SESSIONにアクセスしているので問題ないと思いますが)
P.S.
このような技術的なハナシは、ここよりも「ユーザーズガイド」に投げたほうが良いですね。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.