Oracle データベースに 2 つのテーブルがありますUSERS
。USERLOG
USERS
すべてのシステム ユーザーの詳細が含まれます (IDCOL
、EMAIL
、ISLOCKED
など)。USERLOG
ユーザーがシステムにログオンしたときのログです (USERID
,LOGIN
(日付フィールド))
キー フィールド: USERS.IDCOL
=USERLOG.USERID
削除されたユーザーは、USERS テーブルから削除されます。USERLOG
したがって、テーブルに一致しないID がいくつか存在しUSERS
ます。
ユーザーリストに対して次の 2 つのことを行います。
過去 9 か月間システムにアクセスしていないユーザーをロックします (つまり、過去 9 か月間に ID が表示されない
USERLOG
場合、次のようなものを使用すると思います。months_between( SYSDATE , USERLOG.LOGIN ) <= 9
USERLOG
過去 1 か月または 30 日以内 (つまり、アカウントが作成されたとき) にエントリが 1 つしかないユーザーをロックします。
ユーザーをロックするには、USERS.ISLOCKED
列0
を更新する必要があります1
どうもありがとう