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

SQLServerで壊れたオブジェクトを見つける

    次の記事をチェックしてみてください:

    • Michael J. Swart:不足しているSQL依存関係を見つける
    • eggheadcafe.com:壊れたものを見つける

    MichaelJ.Swartのソリューションは次のようにテストできます。

    CREATE PROCEDURE proc_bad AS
        SELECT col FROM nonexisting_table
    GO
    
    SELECT
        OBJECT_NAME(referencing_id) AS [this sproc or VIEW...],
        referenced_entity_name AS [... depends ON this missing entity name]
    FROM 
        sys.sql_expression_dependencies
    WHERE 
        is_ambiguous = 0
        AND OBJECT_ID(referenced_entity_name) IS NULL
    ORDER BY 
        OBJECT_NAME(referencing_id), referenced_entity_name;
    

    どちらが返されますか:

    +------------------------+------------------------------------------+
    | this sproc or VIEW...  |  ... depends ON this missing entity name |
    |------------------------+------------------------------------------|
    | proc_bad               |  nonexisting_table                       |
    +------------------------+------------------------------------------+
    


    1. crfclust.bdbからの高いスペース使用量

    2. SQLを使用してテキストフィールドの単語数の統計を決定する

    3. OracleApplicationExpress入門-APEX

    4. Oracle連結文字列と数値の例