if exists(select 1 from sysobjects where id=object_id('getnum') and xtype='FN') drop function getnum go create function getnum(@dt datetime) returns int as begin return datepart(second,@dt) end gocreate table A ( ID int default dbo.getnum(getdate()), name varchar(20) ) go--测试 insert A(name) select 'AAA' waitfor delay '00:00:02' insert A(name) select 'AAA' select * from A--删除测试环境 drop table A--结果 /* ID name ----------- -------------------- 24 AAA 26 AAA(2 row(s) affected) */
drop function getnum
go
create function getnum(@dt datetime)
returns int
as
begin
return datepart(second,@dt)
end
gocreate table A
(
ID int default dbo.getnum(getdate()),
name varchar(20)
)
go--测试
insert A(name) select 'AAA'
waitfor delay '00:00:02'
insert A(name) select 'AAA' select * from A--删除测试环境
drop table A--结果
/*
ID name
----------- --------------------
24 AAA
26 AAA(2 row(s) affected)
*/
检查你的表字段的默认值:如果是:([dbo].[getnum](getdate())).那就没错。