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

レコードを挿入、更新、または削除するすべてのストアドプロシージャを見つけるにはどうすればよいですか?

    sp_refreshsqlmodule に電話してください スキーマにバインドされていないすべてのストアドプロシージャ:

    DECLARE @template AS varchar(max)
    SET @template = 'PRINT ''{OBJECT_NAME}''
    EXEC sp_refreshsqlmodule ''{OBJECT_NAME}''
    
    '
    
    DECLARE @sql AS varchar(max)
    
    SELECT  @sql = ISNULL(@sql, '') + REPLACE(@template, '{OBJECT_NAME}',
                                              QUOTENAME(ROUTINE_SCHEMA) + '.'
                                              + QUOTENAME(ROUTINE_NAME))
    FROM    INFORMATION_SCHEMA.ROUTINES
    WHERE   OBJECTPROPERTY(OBJECT_ID(QUOTENAME(ROUTINE_SCHEMA) + '.'
                                     + QUOTENAME(ROUTINE_NAME)),
                           N'IsSchemaBound') IS NULL
            OR OBJECTPROPERTY(OBJECT_ID(QUOTENAME(ROUTINE_SCHEMA) + '.'
                                        + QUOTENAME(ROUTINE_NAME)),
                              N'IsSchemaBound') = 0
    
            EXEC (
                  @sql
                )
    


    1. Rails + Postgres:結合されたテーブルから列のタイムゾーン情報を返さない

    2. 循環外部キーを使用して2つのテーブルから削除する

    3. PHP / mysqli:mysqli_stmt_bind_param()を使用してIPアドレスを挿入します

    4. パフォーマンスの神話:クラスター化インデックスと非クラスター化インデックス