ハマログ

株式会社イーツー・インフォの社員ブログ

ストアド登録で少しハマった(ほんの少し)

こんにちは、いけしまです。ブログすっかりご無沙汰になってしまいおこられてしまいました。
これから少しがんばって何かあるたびに書いていきたいという抱負であります。
ではさっそく
今日はmysqlのストアドの登録で少しハマってしまったので備忘録的に書いておきます。

下記のような簡単なストアドを登録しようと思ったら

CREATE  PROCEDURE test()
BEGIN
SELECT NOW();
END

こんなエラーが

#1064 - 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 

ネットで「mysql CREATE PROCEDURE 1064」で検索したらたくさんでてきますね。
どうも「デリミタが誤ってる」らしい。基本的なことミスしてるみたいですね。も一度きちんとストアドについて調べてみました。
プロシージャにセミコロン入ってるのでそこで完了してしまうのですね。
ということで「DELIMITER」を使って「;」→「//」に変更してストアドを登録して最後に「;」に戻せばいいらしいです。
で下記に変更して登録

DELIMITER //
CREATE  PROCEDURE test()
BEGIN
SELECT NOW();
END
//
DELIMITER ;

ということでストアド登録できました。

  池島 篤則   2017年5月25日


関連記事

Laravel NotificationsでChatworkに通知する

Laravel5.3より、Notificationsという仕組みが備わったので、…

AWSのロードバランサーでリダイレクト設定

リダイレクト設定 一時的にサイトを止めたい、まだ公開前のパスにアクセスさせたくな…

CodeceptionでPhantomJSによるブラウザテストをしてみる。

Dockerの続きを書こうとしましたが、結局MySQLのコンテナくらいしか使って…


← 前の投稿

次の投稿 →