在 Oracle 数据库中,可以使用 CURRENT_TIMESTAMP
函数来获取当前时间戳。结合触发器,可以在特定的数据库操作发生时自动记录时间戳。
以下是一个示例,创建一个表并添加一个触发器,在插入数据时自动记录插入的时间戳:
-- 创建一个示例表
CREATE TABLE example_table (
id NUMBER,
data VARCHAR2(50),
created_at TIMESTAMP
);
-- 创建一个触发器,当插入数据时自动记录时间戳
CREATE OR REPLACE TRIGGER example_trigger
BEFORE INSERT ON example_table
FOR EACH ROW
BEGIN
:NEW.created_at := CURRENT_TIMESTAMP;
END;
/
-- 插入数据到示例表
INSERT INTO example_table (id, data) VALUES (1, 'example data');
-- 查询示例表
SELECT * FROM example_table;
在上面的示例中,创建了一个名为 example_table
的表,包含 id
、data
和 created_at
字段。同时创建了一个名为 example_trigger
的触发器,当插入数据时会自动将当前时间戳赋值给 created_at
字段。
通过这种方式,可以方便地在数据库操作发生时自动记录时间戳,实现一些特定的业务逻辑需求。