CREATE PROCEDURE
- SQL course
- Advanced
- Lesson 37/81
- 4 min
Create a procedure.
CREATE PROCEDURE
With CREATE PROCEDURE you name and store SQL code. Later run with CALL.
CREATE PROCEDURE add_product(name VARCHAR, price DECIMAL)
LANGUAGE SQL
AS $$
INSERT INTO products (name, price) VALUES (name, price);
$$;Procedure that adds a product.
The procedure add_product is created.
CREATE PROCEDURE — details
A procedure can take parameters. They are defined in parentheses.
Each parameter has a name and a type (e.g. name VARCHAR, price DECIMAL); when calling, values are given in the same order.
Practice CREATE PROCEDURE
Create the add_product procedure with name and price parameters.
Starter code
-- create procedure
CREATE PROCEDURESample solution
CREATE PROCEDURE add_product(name VARCHAR, price DECIMAL)
LANGUAGE SQL
AS $$
INSERT INTO products (name, price) VALUES (name, price);
$$;Expected output
Procedure oluşturuldu
Questions and answers
Review the lesson questions together with their answers. To test yourself, solve the lesson interactively.
1 Add AS
CREATE PROCEDURE add_product(name VARCHAR, price DECIMAL)
LANGUAGE SQL
____ $$
INSERT INTO products (name, price) VALUES (name, price);
$$;
CREATE PROCEDURE add_product(name VARCHAR, price DECIMAL)
LANGUAGE SQL
AS $$
INSERT INTO products (name, price) VALUES (name, price);
$$;
Explanation: The procedure body is written after AS, between $$ … $$.
2 Where do procedure parameters go?
- Inside the parentheses Correct answer
- In FROM
- In WHERE
- In AS
Explanation: Parameters are defined in parentheses.
3 CREATE PROCEDURE: match the terms
| Term | Meaning |
|---|---|
CREATE PROCEDURE |
create |
parameter |
input |
CALL |
call |
AS |
body |