3 つのプロシージャを作成し、3番目は他の 2 つを呼び出します。
パイ関数
DELIMITER $$
DROP PROCEDURE IF EXISTS pi$$
CREATE PROCEDURE pi()
BEGIN
DECLARE pi FLOAT;
SET pi = 3.14;
SELECT pi;
END$$
パワー関数
DELIMITER $$
DROP PROCEDURE IF EXISTS pot$$
CREATE PROCEDURE pot(input_number INT)
BEGIN
DECLARE pot FLOAT;
SET pot= input_number;
SELECT POWER (pot,2);
END$$
面積関数
DELIMITER $$
DROP PROCEDURE IF EXISTS areac$$
CREATE PROCEDURE areac(input_number INT)
BEGIN
DECLARE area FLOAT;
SET area = input_number;
SELECT pi()*pot(area,2);
END$$
を実行するCALL areac(1)$$
と、次のエラーが表示されます。
ERROR 1305 (42000): FUNCTION aula3.pot does not exist
どうすればこれを修正できますか?