我正在尝试执行如下的插入查询:
Insert Into table1 (column1, column2)
Values (#value1#, #value2#)
但是,我想说,当参数2/19/2013
为空时,我想将column2默认为#value2#
。我怎么做到这一点?
我正在使用Ibatis框架,而insert语句位于XML文件中,该文件用于从控制器调用的db文件中。
答案 0 :(得分:2)
这可能是您正在寻找的内容:
ISNULL(#value2#,'2/19/2013')
答案 1 :(得分: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