SQLでトランザクションを実行せずに、SQLデータベースでストアドプロシージャを自動的に実行する方法を教えてください。特定の決まった時間に実行したい。
Powershellの使用に慣れていない場合は、ネイティブのService Broker機能を使用できます。
これは複雑に聞こえるかもしれませんが、リンクの下にはすべてのスクリプトがあります:
または、codeplexから スタンドアロンSQLエージェント-まだベータ状態 を使用できます。
ネイティブのsqlcmd機能を使用し、次に windows scheduler または Schtasks を使用してスケジュールできます。
sqlcmd -E -S server_name -d database_name -Q "EXEC schema_name.StoredProcedureName @p1"
SQL Server Expressを使用すると、Powershellを使用して、Windowsスケジューラサービスを通じてストアドプロシージャを自動的に実行できます。
Powershellを使用してストアドプロシージャを実行する方法を示す優れた記事があります。
http://www.maxtblog.com/2010/10/basic-sql-server-stored-procedure-scripting-with-powershell/
Powershellの使用に関する次の質問もご覧ください。
「トランザクションなし」の意味がわからない。ただし、通常、時間指定されたスクリプト/タスクは、SQL Serverエージェントを介してジョブとして実行されます。例と説明については、こちらをご覧ください。
https://stackoverflow.com/questions/1216272/how-to-execute-a-stored-procedure-in-a-sql-agent-job