0% found this document useful (0 votes)
3 views

Stored Procedure Part1

Uploaded by

Kruthi R
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Stored Procedure Part1

Uploaded by

Kruthi R
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

USE DATABASE TUTORIAL_DB;

USE SCHEMA PUBLIC;

CREATE OR REPLACE PROCEDURE demo1(message VARCHAR)


RETURNS VARCHAR NOT NULL
LANGUAGE SQL
AS
$$
BEGIN
RETURN message;
END;
$$
;

CAll demo1('Hello From Academy of data');

Select * from CUSTOMER limit 10;

CREATE OR REPLACE PROCEDURE demo2(id VARCHAR)


RETURNS TABLE (name varchar)
LANGUAGE SQL
AS
DECLARE
result RESULTSET DEFAULT (SELECT c_first_name||c_last_name as name FROM
CUSTOMER WHERE c_customer_sk = :id);
BEGIN
RETURN TABLE(result);
END;

Call demo2(75856526);

CREATE OR REPLACE PROCEDURE demo3(id VARCHAR)


RETURNS TABLE (name varchar)
LANGUAGE SQL
AS
DECLARE
select_statement VARCHAR;
res RESULTSET;
BEGIN
select_statement := 'SELECT c_first_name||c_last_name as name FROM CUSTOMER
WHERE c_customer_sk = ' || id;
res := (EXECUTE IMMEDIATE :select_statement);
RETURN TABLE(res);
END;

Call demo3(75856526);

CREATE OR REPLACE PROCEDURE demo4(table_name VARCHAR)


RETURNS INTEGER NOT NULL
LANGUAGE SQL
AS
$$
DECLARE
row_count INTEGER DEFAULT 0;
res RESULTSET DEFAULT (SELECT COUNT(*) AS COUNT FROM
IDENTIFIER(:table_name));
c1 CURSOR FOR res;
BEGIN
FOR row_variable IN c1 DO
row_count := row_variable.count;
END FOR;
RETURN row_count;
END;
$$
;

Call demo4('CUSTOMER');

You might also like