この文は、イベントの定義、またはイベントに関連付けて定義済みアクションを自動化するイベント・ハンドラの定義を変更するとき、またはスケジュールされたアクションの定義を変更するときに使用します。この文を使用して、イベント・ハンドラの定義を隠すこともできます。
ALTER EVENT [ owner.]event-name [ AT { CONSOLIDATED | REMOTE | ALL } ] [ { DELETE TYPE | TYPE event-type | WHERE { trigger-condition | NULL } | { ADD | ALTER | DELETE } SCHEDULE schedule-spec } ] [ ENABLE | DISABLE ] [ [ ALTER ] HANDLER compound-statement | DELETE HANDLER ]
event-type : BackupEnd | Connect | ConnectFailed | DatabaseStart | DBDiskSpace | Deadlock | "Disconnect" | GlobalAutoincrement | GrowDB | GrowLog | GrowTemp | LogDiskSpace | RAISERROR | ServerIdle | TempDiskSpace
trigger-condition : event_condition( condition-name ) { = | < | > | != | <= | >= } value
schedule-spec : [ schedule-name ] { START TIME start-time | BETWEEN start-time AND end-time } [ EVERY period { HOURS | MINUTES | SECONDS } ] [ ON { ( day-of-week, ... ) | ( day-of-month, ... ) } ] [ START DATE start-date ]
event-name | schedule-name : identifier
day-of-week : string
value | period | day-of-month : integer
start-time | end-time : time
start-date : date
ALTER EVENT event-name SET HIDDEN
DELETE TYPE 句 この句は、イベントとイベント・タイプの関連付けを解除するときに使用します。イベント・タイプの説明については、システム・イベントの概要を参照してください。
ADD | ALTER | DELETE SCHEDULE 句 この句は、スケジュールの定義を変更するときに使用します。1 つの ALTER EVENT 文で 1 つのスケジュールしか変更できません。
WHERE 句 この句は、イベント発生のトリガ条件を変更するときに使用します。WHERE NULL オプションは条件を削除します。パラメータの説明については、CREATE EVENT 文を参照してください。
START TIME 句 この句は、イベントの開始時刻とオプションで終了時刻を指定するときに使用します。start-time パラメータと end-time パラメータは文字列です (たとえば、'12:34:56'
)。変数と式は使用できません (たとえば、NOW()
)。
START DATE 句 この句は、イベントの開始日を指定するときに使用します。start-date パラメータは文字列です。変数と式は使用できません (たとえば、TODAY()
)。
SET HIDDEN 句 この句は、イベント・ハンドラの定義を隠すときに使用します。SET HIDDEN 句を指定すると、ISYSEVENT システム・テーブルの action カラムに格納されているイベント・ハンドラの定義が永続的に難読化されます。
この文によって、CREATE EVENT で作成されたイベント定義を変更することができます。この文は以下の目的に使用できます。
イベント・ハンドラの定義を隠すことができます。
開発段階でトリガ条件やスケジュールを指定せずにイベント・ハンドラを定義、テストし、イベント・ハンドラの完成後に ALTER EVENT を使って実行条件を追加することができます。
イベントを変更する必要がある場合は、そのイベントの実行中に ALTER EVENT ... DISABLE 文を実行すると無効にできます。Sybase Central でイベントを無効にするには、イベントを右クリックし、[有効化] オプションをクリアします。イベントを無効にしても、現在のイベント・ハンドラの実行は中断されません。イベント・ハンドラの実行は、完了するまで続行されます。完了したイベント・ハンドラは、再度有効に設定されるまで再開されません。定義は、変更して再度有効にすることができます。実行中のイベントを確認するには、次の文を実行します。
SELECT * FROM dbo.sa_conn_info() WHERE CONNECTION_PROPERTY('EventName',Number ) = 'event-name' |
DBA 権限が必要です。
オートコミット。
SQL/2003 ベンダ拡張。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |