SQL Server で複数の DDL (約 90) を実行しようとしています。
DDL には、テーブルへの変更は含まれず、ビュー、ストアド プロシージャ、および関数のみが含まれます。DDL 間に相互依存関係がある場合があります (たとえば、ある STP が別の STP を呼び出すなど)。
ファイルを正しい順序で整理するのは時間がかかりすぎるため、開始したくありません。また、スクリプトのいずれかにエラーが発生した場合は、操作全体が失敗するようにしたいと考えています。
どうすればこれを達成できますか?
これまでの私の考えは、トランザクションを開始し、SQL にエラーを無視するように指示することです (これを行う方法はわかりません)。すべてが成功したらコミットします。
- これは良い考えですか?
CREATE \ ALTER
エラーがある場合でも、ストアド プロシージャまたはビューをどうすればよいですか?
いくつかの懸念を明確にし、対処するために...
これは生産用ではありません。テストしているDBを壊れたままにしたくないだけです。
私が達成したいのは、サーバー上でスクリプトの大きなグループを実行することです。それらを注文するのに時間をかける必要はありません。しかし、スクリプトのいずれかにエラーがある場合は、操作全体をロールバックしたいと考えています。
分離は気にしません。操作を単一のトランザクションとして実行したいだけです。