我想将默认值设置为表的列。 列的类型是日期。 我写这个函数是因为只需要没有时间的日期,但它不起作用。
DATEFROMPARTS ( year, month, day )
我该如何解决这个问题?
答案 0 :(得分:0)
您始终可以构建字符串,然后使用cast()
或convert()
。我认为最简单的方法是:
select cast(cast((yr*10000 + mon*100 + d) as varchar(8)) as date)
首先将表达式转换为YYYYMMDD形式的数字。然后到一个字符串然后到一个日期。
编辑:
如果要设置默认值,此表达式是否有效?
create table . . .
datefield date default '2013-01-01',