📜  oracle 上次用户登录 - SQL (1)

📅  最后修改于: 2023-12-03 15:18:09.101000             🧑  作者: Mango

Oracle 上次用户登录 - SQL

在 Oracle 数据库中,可以使用以下 SQL 语句来查询用户上次登录的时间和 IP 地址:

SELECT
    USERNAME, 
    TO_CHAR(LAST_LOGIN_TIME, 'YYYY-MM-DD HH24:MI:SS') AS LAST_LOGIN_TIME, 
    IP_ADDRESS
FROM 
    DBA_USERS
WHERE 
    USERNAME = 'USERNAME';

其中,DBA_USERS 表中保存了所有用户的信息,包括上次登录时间和 IP 地址。

请注意替换 USERNAME 为您要查询的用户名。

返回结果示例:

| USERNAME | LAST_LOGIN_TIME | IP_ADDRESS | | -------- | -------------------| --------------| | SCOTT | 2021-09-01 10:23:17 | 192.168.0.100 | | HR | 2021-09-02 09:16:43 | 192.168.0.101 |

可以看到,返回的结果包括用户的用户名、上次登录时间和 IP 地址。

如果需要获取当前用户的上次登录时间和 IP 地址,可以使用以下 SQL 语句:

SELECT
    USERNAME, 
    TO_CHAR(LAST_LOGIN_TIME, 'YYYY-MM-DD HH24:MI:SS') AS LAST_LOGIN_TIME, 
    IP_ADDRESS
FROM 
    DBA_USERS
WHERE 
    USERNAME = USER;

其中,USER 是系统变量,表示当前登录用户。

返回结果示例:

| USERNAME | LAST_LOGIN_TIME | IP_ADDRESS | | -------- | -------------------| --------------| | SCOTT | 2021-09-01 10:23:17 | 192.168.0.100 |

以上就是查询 Oracle 上次用户登录的 SQL 语句,在实际项目中,可以根据需要将其封装成存储过程或函数,方便重复使用。