2012-04-09 4 views
0

質問はタイトル自体です。 SQL Serverで計算された列を使用するように求められました。しかし、私がGoogleでそれを検索したとき、それは主に1つ以上のcoloumnの組み合わせ値を表示するためのものであることが分かった。これを使用すると、パーマネントカラーとして扱われるとパフォーマンスが低下する可能性があります。だから私は計算された列 - 導入が必要

  1. 長所と短所私たちは、これが

私は、可能な場合(計算して、以下の問題の解決を達成することができますどのように私を導いてください実装する必要が

  • とを知りたいです可能でない場合はなぜですか?)。または、この要件を実装する他の方法。 私の要件は、そのテーブルのどの列が更新されたかを識別するcolomnを使用することです。 値を比較して変更を識別できます。

    EDIT:以下のテーブル構造。これはあなたのように聞こえる事前

  • +0

    タイトルの質問はあなたの文章とは異なります。実際に計算カラムの長所と短所のリストを実際には望んでいないようですが、あなたの特定のシナリオで可能かどうかを尋ねていますか? (回答:あなたがしようとしていることを正確に理解していない限り、BTWは可能ではなく、トリガーが必要です) –

    +0

    @MartinSmith最新の質問 – kbvishnu

    +0

    を参照してください。 )を使用して、列の変更を表すビットマスクを計算します。作業しているテーブルのコード例を投稿すると、より具体的な回答を得ることができます。 –

    答えて

    0

    table structure 
    ColA int ID (PK) - autonumber. 
    ColB Nvarchar 
    ColC Nvarchar 
    ColD Int 
    ColE Int 
    ColF Nvarchar 
    
    -- Updatation can happen any one the coloumns other than ColA 
    

    おかげで、トリガーではなく、計算列が必要です。あなたの最後の文は、あなたが "値を比較して変更を特定したい"と述べています。あなたの最終目標は何ですか?将来のデータ読者がその情報を利用できるようにこの情報を保持しようとしていますか?または、データが変更されたときにプログラム的に何かを達成できるように、独自のプログラミングニーズに対応していますか?どちらの場合も、トリガーは変化しているときに何が変化しているのかを調べる機会を与えます。 @isme:のようなCOLUMNS_UPDATED()をトリガの中で使うことができます。

    関連する問題