以下のストアド プロシージャを実行しようとしています。
CREATE PROCEDURE RNS_CLEANTEXT_MAX_LENGTH()
BEGIN
SELECT MAX(LENGTH(rns_cleantext) - LENGTH(REPLACE(rns_cleantext," ", ""))+1) FROM rns;
END
ただし、次のメッセージが表示されるため、このクエリは実行されません。
You have an error in your SQL syntax;
Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
また、一重引用符、エスケープされた引用符、および上記の二重引用符も試しました。
何か案が。
@eggyal によって修正されました:
固定クエリは次のようになります。
CREATE FUNCTION RNS_CLEANTEXT_MAX_LENGTH()
SELECT MAX(LENGTH(rns_cleantext) - LENGTH(REPLACE(rns_cleantext," ", ""))+1) FROM fns;
@eggyal が指摘しているように、Begin ステートメントと End ステートメントは必要ありません。そして、それらがそうである場合、区切り文字を変更する必要があります。
ありがとう!