在Oracle数据库中,您可以使用以下方法将执行语句写入日志:
- 使用dbms_output包的put_line过程将执行语句写入日志。以下是一个示例:
SET SERVEROUTPUT ON; DECLARE v_sql VARCHAR2(1000); BEGIN v_sql := 'SELECT * FROM employees'; dbms_output.put_line('Executing SQL statement: ' || v_sql); EXECUTE IMMEDIATE v_sql; END; /
- 使用日志表记录执行语句。您可以创建一个日志表,并在执行语句前后插入记录。以下是一个示例:
CREATE TABLE log_table ( log_id NUMBER, log_time TIMESTAMP, sql_statement VARCHAR2(1000) ); DECLARE v_sql VARCHAR2(1000); BEGIN v_sql := 'SELECT * FROM employees'; INSERT INTO log_table (log_id, log_time, sql_statement) VALUES (1, SYSTIMESTAMP, 'Executing SQL statement: ' || v_sql); EXECUTE IMMEDIATE v_sql; INSERT INTO log_table (log_id, log_time, sql_statement) VALUES (2, SYSTIMESTAMP, 'SQL statement executed successfully'); END; /
这些方法可以帮助您记录执行语句并创建一个简单的日志功能。您可以根据需要进行调整和扩展。