- ベストアンサー
SQLSERVERエージェントからのストアド実行方法について
いつもお世話になります。 表題の件ですが、当方オラクル育ちの為四苦八苦しながらの開発です。 とりあえずストアドの作成、登録、クエリアナライザーからの実行、デバックまでは完了しており 最終的にSQLSERVERエージェントのジョブ登録にて毎日設定した時間に作成したストアドを実行したいと思っているのですがエージェントからストアドを起動させるステップのコマンド記述が良く分からないのです。 exec aaa (パラメータ無しです) と書いて実行しても ”ジョブは失敗しました。 ジョブは ユーザー sa が起動しました。最終実行ステップはステップ 1 (ステップ 1) でした。” というメッセージが表示されます。 エージェントから起動する場合、どのようにコーディングすればいいのでしょうか? 開発環境はsqlserver2000です。 申し訳ありませんが宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「exec aaa」とクエリアナライザで実行した場合はうまくゆくのですよね? 以下、手元にSQL Serverがあるわけでないので、細かい操作は違うかも・・・ Enterprise Manager 上でジョブ名を右クリック→履歴の表示で実行履歴が出ます。 そこで詳細の表示にチェックを入れ、展開された部分を参照してみてください。エラー原因が出ているかもしれません。 確認点としては、 ・[種類]が[Transact-SQL スクリプト (TSQL)]になっているか? ・[データベース]でストアドプロシージャを作成したデータベースが指定されているか? といったところでしょうか。
その他の回答 (1)
- utakataXEX
- ベストアンサー率69% (711/1018)
#1 さんの回答にあるように、そのダイアログから詳細が見れます。 「詳細ステップを表示」 をチェックしても詳細なエラー内容が表示されないでしょうか?
お礼
utakataXEXさんお返事ありがとうございます。 仰る通り画面右上に「詳細ステップを表示」のチェックボックスがあり、詳細が見られるようになりました。 ただ、この回答を頂く前にストアドを少しイジッていたら質問に書いた”EXEC aaa”で起動するようになりました。 結局動かなかった時のログを削除してしまってたんで、この質問を投げかけた時の原因はわからないままです(笑)。 次回からはエラー詳細の見方も分かったんで早く対応できると思います。 sawaganiさん utakataXEXさん ありがとうございました。
お礼
sawaganiさんお返事ありがとうございます。 sawaganiに指摘いただいた点確認してみましたが、種類、データベースの設定に間違いは見つかりませんでした。 後、>ジョブ名を右クリック→履歴の表示で実行履歴が出ます。 というのは右クリック→ジョブヒストリってやつでいいんでしょうか?それなら質問で書いたエラーメッセージだけが表示されておりました。 >「exec aaa」とクエリアナライザで実行した場合はうまくゆくのですよね? これはうまくいきます。 色々とすいません。自分なりにもう少し調べてみます。もし何か思い当たる所がありましたらお手数ですがレスお願いします。