以下のコードは動作しますが、かなり正確ですが、他の '標準的な'方法と同様にこれを行うのは問題ありませんか?try-catchブロックを使用してSQL Serverにテーブルをドロップする
--Drop table if exists
begin try
drop table #temp
end try
begin catch
print 'table does not exist'
end catch
--Create table
create table #temp(a int, b int)
これらはすべて要件に応じて異なります。一時的なテーブルを使って作業しているだけなら、Preamの答えはどれも良いものです。あなたのテクニックは、テーブルが存在するかどうかのフィードバックを提供し、そのフィードバックは役に立つかもしれません。 –
例外が発生した場合に/を実行する予定がある場合、catchブロックは素晴らしいです。追加のアクションがない場合は、余分なタイピングだと主張することができます。この場合、一時的に存在するかどうかは気にしません。私はエラーを避けるためにチェックしています。このことを念頭において、IF NOT EXISTS/OBJECT_ID IS NULLメソッドはより簡潔です。 –
@ destination-data 'Try catch'のように見えます。テーブルが存在しないときに追加のアクションが必要な場合、 'if ... begin additional-actions end'が行います。 – Serg