2016-08-10 4 views
0

私はデータベーステーブルAにフィールドvarchar(20)を持っています。私は、フィールドvarchar(60)を持つ別のテーブルBを持っています。 Insert文は20より大きい文字数で実行されます。テーブルAに前に挿入トリガを設定して、テーブルBに元の値(20より大きい可能性があります)を追加しようとしました。ただし、前の挿入トリガでも、切り捨てられた値(ちょうど最初の20文字)。 Iは、テーブルAに、テーブルBに20文字を超える値を追加し、最初の20個の文字を有することができ、どのような方法挿入トリガーイベントの前に切り捨てられていないデータを取得する

  • 表A VARCHARに変更することができない(60)
  • データを表Bに挿入することができないとされています(トリガーのみ)

答えて

0

したがって、column1 varchar(60)、column1_short(20)を使用し、トリガーcolumn1でデータをテーブルBに伝播することをお勧めします。 私の意見では、挿入された元の値から挿入トリガーで値を取得することはできません。値を変更したNEWにアクセスするだけです。

+0

私の質問で述べたように、私はテーブルを変更することはできません。 2つの挿入ステートメント。 私はこれらの解決策のいずれかを進めることができないいくつかの理由があります –

+0

私の意見では、元の挿入された値から挿入トリガーで値を得ることができない、あなたは値を変更したNEWにアクセスできます。あなたはそれを行う別の方法を見つける必要があります。 – Arkowsky

関連する問題