新米プログラマーのfunnyralihoです。今回あれこれ調べて先輩方に頼ってみてもなかなか解決しなかった問題をどうしても解決したく、質問させていただきます。投稿で至らぬ点もあるかと思いますが、とうかお助け下さい...よろしくお願い致します。知識はほとんどなく理解のために調べる時間もかなりかかってしまいますができるだけ初心者向けの解説が頂けると大変助かります。環境情報:Java7,Mysql5.6,Windows7質問です。MySQLのストアドプロシージャをmigrateに入れたいのですが、やってみるとエラーが出るというパターンです。※JavaからJdbcManager経由でストアドプロシージャを呼び出して実行することはできています。手動でDBに追加するには問題なくCreateもできるSQLです。S2JDBCはdb\migrate{db名}\migrate{バージョン番号}\create\010-table\hoge.sqlもしくは\drop\010-table\hoge.sqlといったディレクトリ構成でSQLファイルを配置すると、s2jdbc-gen-build.xmlなどの操作で自動的にDBスキーマ?テーブル?などを作成してくれると思います。逆にDBの方からそのmigrateのファイルを作ったり、Javaのクラスを自動生成してくれると思います。今回私は自分の仕事でストアドプロシージャを作成しました。それをmigrateに入れ欲しいということで、いくつかのストアドプロシージャを以下のディレクトリ構成で保存しました。db\migrate{db名}\migrate{バージョン番号}\create\070-procedure\もしくは\drop\070-procedure\以下そのcreate用SQLです。中身のSELECT文以外はそのままです。このストアドプロシージャ単体で実行も、Javaからの実行も問題無く出来ます。;以下はDrop用SQLです。getHoge;保存し、ビルドをしてからantの代わりにbatファイルで以下のコマンドでmigrateします。こちらもストアドプロシージャをいれていなければ問題なく実行されDBスキーマが整います。org.seasar.exteseasar.extension.jdbc.gen.internal.command.MigrateCommand)の実行に失敗しました。sta実行中に例外が発生しました。moreava上記のエラーが発生します。ご存知の方がいらっしゃいましたら、どうぞアドバイスをお願い致します。更新順0S2JBDC-genはSQLをJDBC経由で実行しますが、delimiterコマンドはmysqlのコマンドラインからは実行できますがJDBCからは実行できません。本来JDBCでは;でSQLが区切られないので、JDBCから";"こみでそのままでDDLを流せばストアドプロシジャーが作成されるのですが、s2jdbc-genの内部で実行するSQLを区切る単位として";"を使っているので、そのままではs2jdb-genがうまくSQLの区切りを認識できないと思います。以外を使えば、s2jdbc-genからストアドプロシジャーを作成することが出来ると思います。(2)azusaさん早速のご回答をありがとうございます!しかも非常にわかりやすく具体的で大変助かります。08:28ウォッチこの質問への回答やコメントをメールでお知らせします。