Anda di halaman 1dari 7

1.

Stored Procedure tanpa parameter


a) Query :
DELIMITER $$
CREATE PROCEDURE luas_sgtg()
BEGIN
DECLARE alas, tinggi INT;
DECLARE luas_segitiga FLOAT;
SET alas = 5;
SET tinggi = 8;
SET luas_segitiga = alas*tinggi/2;
SELECT alas, tinggi, luas_segitiga;
END $$
DELIMITER;
Cara Pemanggilan : CALL luas_sgtg;
Output :

b) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsg()
BEGIN
DECLARE sisi1, sisi2 INT;
DECLARE luas_persegi FLOAT;
SET sisi1 = 8;
SET sisi2 = 8;
SET luas_persegi = sisi1*sisi2;
SELECT sisi1, sisi2, luas_persegi;
END $$
DELIMITER;
Cara Pemanggilan : CALL luas_prsg;
Output :

c) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsgpnjng()
BEGIN
DECLARE panjang, lebar INT;

DECLARE luas_persegipanjang FLOAT;


SET panjang = 10;
SET lebar = 4;
SET luas_persegipanjang = panjang*lebar;
SELECT panjang, lebar, luas_persegipanjang;
END $$
DELIMITER;
Cara Pemanggilan : CALL luas_prsgpnjng;
Output :

d) Query :
DELIMITER $$
CREATE PROCEDURE luas_kubus()
BEGIN
DECLARE sisi1, sisi2 INT;
DECLARE luas_kubus FLOAT;
SET sisi1 = 3;
SET sisi2 = 3;
SET luas_kubus = 6*sisi1*sisi2;
SELECT sisi1, sisi2, luas_kubus;
END $$
DELIMITER;
Cara Pemanggilan : CALL luas_kubus;
Output :

e) Query :
DELIMITER $$
CREATE PROCEDURE luas_balok()
BEGIN
DECLARE panjang, lebar, tinggi INT;
DECLARE luas_balok FLOAT;
SET panjang = 10;
SET lebar = 4;
SET tinggi = 5;

SET luas_balok = 2*panjang*lebar+2*panjang*tinggi+2*lebar*tinggi;


SELECT panjang, lebar, tinggi, luas_balok;
END $$
DELIMITER;
Cara Pemanggilan : CALL luas_balok;
Output :

2. Stored Procedure Menggunakan Parameter Input


a) Query :
DELIMITER $$
CREATE PROCEDURE luas_sgtgIN (IN alas INT, IN tinggi INT)
BEGIN
DECLARE luas FLOAT;
SET luas = alas*tinggi/2;
SELECT luas;
END $$
DELIMITER;
Cara Pemanggilan : CALL sgtgIN(4,2);
Output :

b) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsgIN (IN sisi1 INT, IN sisi2 INT)
BEGIN
DECLARE luas_persegi FLOAT;
SET luas_persegi = sisi1*sisi2;
SELECT sisi1, sisi2, luas_persegi;
END $$
DELIMITER $$
Cara Pemanggilan : CALL prsgIN(5,5)
Output :

c) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsgpnjngIN (IN panjang INT, IN lebar INT)
BEGIN
DECLARE luas_persegipanjang FLOAT;
SET luas_persegipanjang = panjang*lebar;
SELECT panjang, lebar, luas_persegipanjang;
END $$
DELIMITER $$
Cara Pemanggilan : CALL luas_prsgpnjngIN(8,4)
Output :

d) Query :
DELIMITER $$
CREATE PROCEDURE luas_kubusIN (IN sisi1 INT, IN sisi2 INT)
BEGIN
DECLARE luas_kubus FLOAT;
SET luas_kubus = 6*sisi1*sisi2;
SELECT sisi1, sisi2, luas_persegi;
END $$
DELIMITER $$
Cara Pemanggilan : CALL luas_kubusIN(4,4);
Output :

e) Query :
DELIMITER $$
CREATE PROCEDURE luas_balokIN (IN panjang INT, IN lebar INT, IN tinggi
INT)
BEGIN
DECLARE luas_balok FLOAT;
SET luas_balok = 2*panjang*lebar+2*panjang*tinggi+2*lebar*tinggi;
SELECT panjang, lebar, tinggi, luas_balok;
END $$
DELIMITER $$
Cara Pemanggilan : CALL luas_balokIN(8,3,4);
Output :

3. Stored Procedure menggunakan parameter input dan output

a) Query :
DELIMITER $$
CREATE PROCEDURE luas_sgtgINOUT (IN alas INT, IN tinggi INT, OUT
luas_segitiga FLOAT)
BEGIN
SET luas_segitiga = alas*tinggi/2;
END $$
DELIMITER;
Cara Pemanggilan :
CALL luas_sgtgINOUT(8,6,@L);
SELECT @L AS Luas_segitiga;
Output :

b) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsgINOUT (IN sisi1 INT, IN sisi2 INT, OUT luas
FLOAT)
BEGIN
SET luas = sisi1*sisi2;
END $$
DELIMITER;
Cara Pemanggilan :
CALL luas_prsgINOUT(8,8,@L);
SELECT @L AS Luas_persegi;
Output :

c) Query :
DELIMITER $$
CREATE PROCEDURE luas_prsgpnjngINOUT (IN panjang INT, IN lebar INT,
OUT luas FLOAT)
BEGIN
SET luas = panjang*lebar;
END $$
DELIMITER;
Cara Pemanggilan :
CALL luas_prsgpnjngINOUT(8,3,@L);
SELECT @L AS Luas_persegipanjang;
Output :

d) Query :

DELIMITER $$
CREATE PROCEDURE luas_kubusINOUT (IN sisi1 INT, IN sisi2 INT, OUT luas
FLOAT)
BEGIN
SET luas = 6*sisi1*sisi2;
END $$
DELIMITER;
Cara Pemanggilan :
CALL luas_kubusINOUT(6,6,@L);
SELECT @L AS Luas_Kubus;
Output :

e) Query :
DELIMITER $$
CREATE PROCEDURE luas_balokINOUT (IN panjang INT, IN lebar INT, IN
tinggi INT, OUT luas FLOAT)
BEGIN
SET luas = 2*panjang*lebar+2*panjang*tinggi+2*lebar*tinggi;
END $$
DELIMITER;
Cara Pemanggilan :
CALL luas_balokINOUT(8,4,3,@L);
SELECT @L AS Luas_Balok;
Output :

4. stored function, cara memanggil, serta outputnya


a) Query :
DELIMITER $$
CREATE FUNCTION pangkat(angka INT, pangkat INT)
RETURNS INT
BEGIN
DECLARE a, hasil INT;
SET a=1;
SET hasil=1;
REPEAT
SET hasil = hasil*angka;
SET a=a+1;
UNTIL a>pangkat
END REPEAT;
RETURN hasil;
END $$
DELIMITER;

Cara Pemanggilan : SELECT pangkat(2,3);


Output :

b) Query :
DELIMITER $$
CREATE FUNCTION ganjilgenap(angka INT) RETURNS VARCHAR(6)
BEGIN
DECLARE hasil VARCHAR(6);
IF (angka MOD 2 = 0) THEN
BEGIN
SET hasil='GENAP';
END;
ELSE
SET hasil='GANJIL';
END IF;
RETURN hasil;
END $$
DELIMITER;
Cara Pemanggilan : SELECT ganjilgenap(9);
Output :

Anda mungkin juga menyukai