T-SQLがうまくいかないです。どのようにT-SQLに引き金を引くことができますか?それぞれがT-SQLでは動作しません。おそらくPL/SQLトリガをT-SQLに変換
CREATE OR REPLACE TRIGGER DSS.TRG_DEPO_STOK_IZLEME
BEFORE INSERT OR UPDATE
ON DSS.CR_DEPO_STOK FOR EACH ROW
BEGIN
INSERT INTO CR_DEPO_STOK_IZLEME
(ID_DEPO_STOK_IZLEME
, ID_DEPO_STOK
, MT_MIKTAR_ESKI
, MT_MIKTAR_YENI
, EKLEME_TARIHI
)
VALUES (SEQ_ID_DEPO_STOK_IZLEME.NEXTVAL
, :NEW.ID_DEPO_STOK
, :OLD.MT_MIKTAR
, :NEW.MT_MIKTAR
, SYSDATE
);
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
次のバージョンまでTSQLにシーケンスはありません。代わりにID列を使用していますか?また、「その他」は何をしますか? –
はい、私はID列を使用しています。他のものは重要ではなく、変換する必要はありません – mcb
@MartinSmith:WHEN OTHERSはPL \ SQLのすべての未処理例外のキャッチです。これは、コード化していないエラーを再現するのに最適です。上記のように "naked"を使用すると、トラップされていないすべての例外が基本的に隠されます。それについての長い暴言があります:http://asktom.oracle.com/pls/apex/f?p=100:11:0:::P11_QUESTION_ID:1270688200346183091 – JAQFrost