こんにちは私はMySQLで関数を書こうとしています。これにより、テーブルから値が返されます。
エラーが発生しました:
エラーコード:1415。関数から結果セットを返すことは許可されていません
それが何を意味するのかは知っていますが、問題を解決する方法がわかりません。必要なのは、挿入された行のIDという1つの値だけです。助けてくれてうれしいです。
関数の機能は
次のとおりです。ランダム値を使用してaip_requestテーブルに新しい行を挿入します。これにより、挿入後に行を識別できます。関数は、作成された行のIDを返す必要があります。request_idは自動値です。
DROP FUNCTION IF EXISTS `sp_get_new_request_id`;
DELIMITER $$
CREATE FUNCTION `sp_get_new_request_id` ()
RETURNS BIGINT
BEGIN
DECLARE var_random bigint;
SET @random := CAST(RAND(NOW()) AS CHAR(150));
INSERT INTO aip_request
(Firstname)
VALUES( @random );
SELECT request_id INTO var_random FROM aip_request
WHERE Firstname = @random
LIMIT 1;
Return var_random;
END
$$