Kbase P99200: How to "SET TRANSACTION ISOLATION LEVEL" using Oracle PL/SQL?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  12/22/2004 |
|
Status: Unverified
GOAL:
How to "SET TRANSACTION ISOLATION LEVEL" using Oracle PL/SQL?
FIX:
Use the Oracle PL/SQL 'SET TRANSACTION' Statement:
DECLARE
daily_sales REAL;
weekly_sales REAL;
monthly_sales REAL;
BEGIN
...
COMMIT; -- ends previous transaction
SET TRANSACTION READ ONLY NAME 'Calculate sales figures';
SELECT SUM(amt) INTO daily_sales FROM sales
WHERE dte = SYSDATE;
SELECT SUM(amt) INTO weekly_sales FROM sales
WHERE dte > SYSDATE - 7;
SELECT SUM(amt) INTO monthly_sales FROM sales
WHERE dte > SYSDATE - 30;
COMMIT; -- ends read-only transaction
...
END;