2017-10-18 3 views
0

対応する行の別の列と同じ値を持つ列に「既定値」を構成しようとしています。だから私はこれをやろうとしました:テーブル内の列を既定値としてコピー

UPDATE table 
SET field1 = field2 

私はこれを手動でやりたくはありませんが、新しい行が挿入されるたびに自動的に行われます。

まず、これは簡単な作業だと思っていました。しかし、私が今までに見つけた最良の解決策は、SQL Serverエージェントによって開始されるジョブに格納されたSQLスクリプトでした。

既定値のように機能するソリューションはありますか?または、私の考えはばかげています。なぜなら、挿入が起こるまで存在しない値に基づいて「デフォルト値」を作成しようとしているからです。その場合、私は友人を求めています...

ありがとうございました。

+0

トリガーを見ましたか? AFTER INSERT – Leonidas199x

+0

いいえ私はトリガーを使用しようとしなかった。提案していただきありがとうございます。トリガーは私が必要なものです。 – Jaymax

答えて

0

あなたのベストショットは、そこにトリガを使用することです。あなたは次のようなことができます:

CREATE TRIGGER [dbo].[YourTrigger] ON [dbo].[YourTable] FOR INSERT 
AS 
BEGIN 
    DECLARE @ID AS INT 
    SET @ID = SELECT yourID FROM INSERTED 

    UPDATE YourTable 
    SET field1 = field2 
    WHERE yourID = @ID 
END 
+0

ありがとうございました。私はトリガーロークを作成します。それは私の問題を解決するように見えます。 – Jaymax

関連する問題