0

次のような挿入クエリを実行しようとしています。

Insert Into table1 (column1, column2)
Values (#value1#, #value2#)

2/19/2013しかし、たとえば、パラメーター#value2#が nullの場合にcolumn2 をデフォルトに設定したいとします。どうすればそれを達成できますか?

私は Ibatis フレームワークを使用しています。insert ステートメントは XML ファイルにあり、コントローラーから呼び出される db ファイルで使用されます。

4

2 に答える 2

2

This may be what you're looking for:

ISNULL(#value2#,'2/19/2013')

于 2013-02-19T20:48:50.103 に答える
2

XMLファイルからの挿入ステートメントを変更できない場合は、トリガーの作成を検討してください。

CREATE TRIGGER table1_Insert ON table1
INSTEAD OF INSERT
AS
INSERT INTO table1 (column1, column2)
    SELECT column1, ISNULL(column2,'2/19/2013') FROM INSERTED;

次に、挿入しようとするとNULL

INSERT INTO table1 VALUES (1, NULL);

あなたが持っているでしょう

| COLUMN1 |   COLUMN2 |
-----------------------
|       1 | 2/19/2013 |

これがsqlfiddleです

于 2013-02-19T21:09:17.460 に答える