sql >> データベース >  >> RDS >> Sqlserver

SQL ServerでCREATEまたはALTERを実行するにはどうしますか?

    この記事は、SQLサーバーにオブジェクトをドロップするときにアクセス許可を失うことについての良い点を示しています。

    したがって、権限を保持するアプローチは次のとおりです。

    IF OBJECT_ID('spCallSomething') IS NULL
        EXEC('CREATE PROCEDURE spCallSomething AS SET NOCOUNT ON;')
    GO
    
    ALTER PROCEDURE spCallSomething ... 
    --instead of DROP/CREATE
    

    関数でも機能します。PROCEDUREを置き換えるだけです。 FUNCTIONを使用 上記のコードで。

    この方法でそれを行うことを検討するもう1つの理由は、障害に対する耐性です。 DROPは成功したが、CREATEは失敗したと仮定します。DBが壊れて終了します。 ALTERアプローチを使用すると、オブジェクトの古いバージョンになります。



    1. GoogleクラウドストレージSQLインスタンスにログインできません

    2. MySQLとSymfony2

    3. Soundex、Jaro Winkler、およびEdit Distance(UTL_MATCH)を使用したOracleの重複列値の照合

    4. テーブルまたは列へのすべての外部キーを表示するにはどうすればよいですか?