sql server 2008,在默认值或绑定字段中设置值

时间:2013-12-27 14:29:40

标签: sql sql-server-2008

我想将默认值设置为表的列。 列的类型是日期。 我写这个函数是因为只需要没有时间的日期,但它不起作用。

DATEFROMPARTS ( year, month, day ) 

我该如何解决这个问题?

1 个答案:

答案 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',