0% found this document useful (0 votes)
4 views2 pages

Stored Procedure Part1

Uploaded by

Kruthi R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views2 pages

Stored Procedure Part1

Uploaded by

Kruthi R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
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