\set ECHO none
SET
SET
SET
Null display is "<NULL>".
DROP FUNCTION dbms_output_test();
ERROR:  function dbms_output_test does not exist
DROP TABLE dbms_output_test;
ERROR:  table "dbms_output_test" does not exist
-- DBMS_OUTPUT.DISABLE [0]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
  buff  | status 
--------+--------
 <NULL> |      1
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.PUT_LINE [1]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff1	VARCHAR(20) := 'orafce';
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE');
	PERFORM DBMS_OUTPUT.PUT_LINE (buff1);
	PERFORM DBMS_OUTPUT.PUT ('ABC');
	PERFORM DBMS_OUTPUT.PUT_LINE (' ');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE
orafce
ABC 
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.PUT_LINE [2]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORA
F
CE');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORA
F
CE
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.PUT [1]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff1	VARCHAR(20) := 'ora';
	buff2	VARCHAR(20) := 'f';
	buff3	VARCHAR(20) := 'ce';
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT ('ORA');
	PERFORM DBMS_OUTPUT.PUT ('F');
	PERFORM DBMS_OUTPUT.PUT ('CE');
	PERFORM DBMS_OUTPUT.PUT_LINE (' ');
	PERFORM DBMS_OUTPUT.PUT ('ABC');
	PERFORM DBMS_OUTPUT.PUT_LINE (' ');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE 
ABC 
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.PUT [2]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT ('ORA
F
CE');
	PERFORM DBMS_OUTPUT.PUT_LINE (' ');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORA
F
CE 
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [1]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
 ORAFCE TEST 2 |      0
(2 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [2]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 3');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
 ORAFCE TEST 3 |      0
 <NULL>        |      1
 <NULL>        |      1
(4 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [3]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.PUT ('ORA');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
 ORA           |      0
 <NULL>        |      1
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [4]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
               |      0
 <NULL>        |      1
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [5]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1
');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT REPLACE(buff, '
', '<LF>') FROM dbms_output_test;
      replace      
-------------------
 ORAFCE TEST 1<LF>
 ORAFCE TEST 2
(2 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINE [6]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORA
F
CE');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT regexp_replace(buff, E'\n', '<LF>', 'g') FROM dbms_output_test limit 1;
 regexp_replace 
----------------
 ORA<LF>F<LF>CE
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [1]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	buff1	VARCHAR(20);
	buff2	VARCHAR(20);
	buff3	VARCHAR(20);
	stts	INTEGER := 10;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 3');
	SELECT INTO buff1,buff2,buff3,stts lines[1],lines[2],lines[3],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff1, stts);
	INSERT INTO dbms_output_test VALUES (buff2, stts);
	INSERT INTO dbms_output_test VALUES (buff3, stts);
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      3
 ORAFCE TEST 2 |      3
 ORAFCE TEST 3 |      3
 <NULL>        |      0
(4 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [2]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	buff1	VARCHAR(20);
	buff2	VARCHAR(20);
	stts	INTEGER := 2;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 3');
	SELECT INTO buff1,buff2,stts lines[1],lines[2],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff1, stts);
	INSERT INTO dbms_output_test VALUES (buff2, stts);
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      2
 ORAFCE TEST 2 |      2
 ORAFCE TEST 3 |      1
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [3]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 1;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 3');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      1
 ORAFCE TEST 3 |      1
 <NULL>        |      0
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [4]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 1;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.PUT ('ORA');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      1
 ORA           |      1
 <NULL>        |      0
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [5]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 1;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      1
               |      1
 <NULL>        |      0
(3 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.GET_LINES [6]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 1;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORA
F
CE');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT regexp_replace(buff, E'\n', '<LF>', 'g') FROM dbms_output_test limit 1;
 regexp_replace 
----------------
 ORA<LF>F<LF>CE
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.NEW_LINE [1]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff1	VARCHAR(20);
	buff2	VARCHAR(20);
	stts	INTEGER := 10;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT ('ORA');
	PERFORM DBMS_OUTPUT.NEW_LINE();
	PERFORM DBMS_OUTPUT.PUT ('FCE');
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff1,buff2,stts lines[1],lines[2],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff1, stts);
	INSERT INTO dbms_output_test VALUES (buff2, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
 buff | status 
------+--------
 ORA  |      2
 FCE  |      2
(2 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.NEW_LINE [2]
CREATE TABLE dbms_output_test (buff VARCHAR(3000), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff1	VARCHAR(3000);
	stts	INTEGER := 10;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.ENABLE(2000);
	FOR j IN 1..1999 LOOP
		PERFORM DBMS_OUTPUT.PUT ('A');
	END LOOP;
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff1,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff1, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT buff FROM dbms_output_test;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      buff                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.DISABLE [1]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);

	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
	PERFORM DBMS_OUTPUT.ENABLE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 3');
	PERFORM DBMS_OUTPUT.DISABLE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.ENABLE();

	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 4');
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);

	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 5');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.NEW_LINE();
	PERFORM DBMS_OUTPUT.ENABLE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);

	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
  buff  | status 
--------+--------
 <NULL> |      1
 <NULL> |      1
 <NULL> |      1
        |      0
 <NULL> |      1
(5 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.DISABLE [2]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 10;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
  buff  | status 
--------+--------
 <NULL> |      0
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [1]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	status	INTEGER;
	num		INTEGER := 2000;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.ENABLE(2000);
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.NEW_LINE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE TEST 1
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
 buff | status 
------+--------
(0 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [2]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 2');
	PERFORM DBMS_OUTPUT.NEW_LINE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
 ORAFCE TEST 2 |      0
(2 rows)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [3]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER := 10;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	SELECT INTO buff,stts lines[1],numlines FROM DBMS_OUTPUT.GET_LINES(stts);
	INSERT INTO dbms_output_test VALUES (buff, stts);

END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      1
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [4]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	FOR j IN 1..2000 LOOP
		PERFORM DBMS_OUTPUT.PUT ('A');
	END LOOP;
	PERFORM DBMS_OUTPUT.NEW_LINE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [5]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE(NULL);
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- DBMS_OUTPUT.ENABLE [6]
CREATE TABLE dbms_output_test (buff VARCHAR(20), status INTEGER);
CREATE TABLE
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
DECLARE
	buff	VARCHAR(20);
	stts	INTEGER;
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.ENABLE();
	SELECT INTO buff,stts line,status FROM DBMS_OUTPUT.GET_LINE();
	INSERT INTO dbms_output_test VALUES (buff, stts);
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

SELECT * FROM dbms_output_test;
     buff      | status 
---------------+--------
 ORAFCE TEST 1 |      0
(1 row)

DROP TABLE dbms_output_test;
DROP TABLE
DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- SERVEROUTPUT [1]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIn
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 2');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE TEST 2
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- SERVEROUTPUT [2]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 1');
	PERFORM DBMS_OUTPUT.NEW_LINE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT ('ORAFCE TEST 2');
	PERFORM DBMS_OUTPUT.NEW_LINE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE TEST 2
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
-- SERVEROUTPUT [3]
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('f');
	PERFORM DBMS_OUTPUT.DISABLE();
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION
CREATE FUNCTION dbms_output_test() RETURNS VOID AS $$
BEGIN
	PERFORM DBMS_OUTPUT.DISABLE();
	PERFORM DBMS_OUTPUT.ENABLE();
	PERFORM DBMS_OUTPUT.SERVEROUTPUT ('t');
	PERFORM DBMS_OUTPUT.PUT_LINE ('ORAFCE TEST 1');
END;
$$ LANGUAGE plpgsql;
CREATE FUNCTION
SELECT dbms_output_test();
ORAFCE TEST 1
 dbms_output_test 
------------------
 
(1 row)

DROP FUNCTION dbms_output_test();
DROP FUNCTION