こんにちは私はMS SQL Management Studio express 2005を使用しており、毎日アクティブにするストアドプロシージャが必要です。sql severエージェントを使用せずにストアドプロシージャを自動的に実行できますか?
しかし、私はSQLエージェントを持っていません。
Managemnetスタジオは毎日開かれないため、スタートアップスクリプトを使用することはできません。
誰もがエージェントなしでこれを行う方法を知っていますか?
ありがとうございます。
こんにちは私はMS SQL Management Studio express 2005を使用しており、毎日アクティブにするストアドプロシージャが必要です。sql severエージェントを使用せずにストアドプロシージャを自動的に実行できますか?
しかし、私はSQLエージェントを持っていません。
Managemnetスタジオは毎日開かれないため、スタートアップスクリプトを使用することはできません。
誰もがエージェントなしでこれを行う方法を知っていますか?
ありがとうございます。
あなたが使用できるsqlcmdの
http://msdn.microsoft.com/en-us/library/ms162773.aspx
その後、バッチファイルとWindowsスケジューラ
例
sqlcmd -E -S localhost -q "select count(1) from databasename.dbo.tablename"
以下を経由して、スケジュールこれはローカルのSQLに接続することを持っていますデータベース内のテーブルに対して行数を実行します。
データベース呼び出しを行うスクリプトを作成し、スケジュールされたタスクを使用してスクリプトを実行します。
Windowsスケジュールタスクを作成して、コマンドラインクライアントosql
を実行することができます。
それはかなりありませんが、あなたがマスターにストアドプロシージャを作成することができます
use master
go
CREATE PROCEDURE DoStuffDaily
AS
WHILE 1=1
BEGIN
WAITFOR TIME '00:05' --5 past midnight?
EXEC <yourdb>.<schema>.<proc>
END
go
をそれからちょうどsp_procoptionを使用して、起動手順として、このストアドプロシージャをマークし、SQL Serverを再起動します。
これはstatupプロシージャをマークすると言いますが、これはSQLが起動されるたびに実行されるか、thiosが常に実行されることを意味しますか?感謝 – Leigh
SQL Serverが起動するたびに実行されますが、この特定のストアドプロシージャは決して終了しません。毎日'00:05 'を待ってから、毎日実行したいストアドプロシージャを実行します。ストアドプロシージャが非常に速く実行されている場合、 'EXIT'の後に2回目の' WAITFOR TIME'を追加して、同じ日に2回実行されないようにすることができます。 'WAITFOR TIME '00:06''は、 。 –
ありがとう、私はどのようにスクリプトをオフにしますか?ありがとうございます。 – Leigh
sqlcmd -E -S localhost -q "count(1)from databasename.dbo.tablename" -Eは信頼できる接続を意味します(特定のユーザー名を与えるには-Uと-Pを使用する必要があります)とパスワード)-Sはサーバを与え、-qはクエリです....スイッチのケースが重要であることに注意してください – AgentDBA
ありがとうございます。しかし、私はそれらを持っていて、彼らは接続できないエラーがあり、ありがとう – Leigh