标量值函数函数
CREATE FUNCTION f_NextBH()
RETURNS char(14)
AS
BEGIN
RETURN(SELECT CONVERT(varchar(8), GETDATE(), 112)+RIGHT(1000001+ISNULL(RIGHT(MAX(BH),6),0),6) FROM tb WITH(XLOCK,PAGLOCK))
END
GO
CONVERT(varchar(8), GETDATE(), 112)这货是日期yyyymmdd,后面是六位自增。
应用
CREATE TABLE tb(
BH char(14) PRIMARY KEY DEFAULT dbo.f_NextBH(),
col int)