sqlserver 2000如何取设置某一个字段的默认值为其最大值加1?

时间:2022-04-02 14:40:52
sqlserver 2000如何取设置某一个字段的默认值  ,其默认值为这个字段当前的最大值加1? 如果还没有记录,其最大值就是0,然后在0上加1.

13 个解决方案

#1


max(fieldname)+1

#2


不行啊,兄弟

#3


UPDATE 表名 SET 字段 = '字段'+1 WHERE id = '@id' 

#4


默认值太难了,你想智能的话,搞个触发器吧

#5


引用 3 楼 swde125 的回复:
SQL code
UPDATE 表名 SET 字段 = '字段'+1 WHERE id = '@id'


.是默认值哦

#6


自定义一个function 在字段的default默认设置这个function就OK啦

#7


搞个自动增长不行么???

#8


1、你的这个字段必须是数字类型的。
2、设置默认值可以在表中直接设置的。
3、取最大值 max(isnull(filename,0))+1
看下这个字段是否为空,如果为空的话,就给0,然后+1.
试一试。没写过,嘿嘿。

#9


引用 8 楼 mangchao330688 的回复:
1、你的这个字段必须是数字类型的。
2、设置默认值可以在表中直接设置的。
3、取最大值 max(isnull(filename,0))+1
看下这个字段是否为空,如果为空的话,就给0,然后+1.
试一试。没写过,嘿嘿。


不行哦

#10


为什么要+1????

#11


Declare @lastNo varchar(50);
Declare @nextNo varchar(50);
Declare @tmpStr varchar(50);

Select @lastNo = isNull(Max([No]),'-00000000') From AAA

Select @tmpStr = '00000000' + cast(Substring(@lastNo, 3, 8) + 1 as varchar)
Select @nextNo = '-' + Substring(@tmpStr, len(@tmpStr) - 7, 8)

#12


select max(value)+1 

#13


都不行

#1


max(fieldname)+1

#2


不行啊,兄弟

#3


UPDATE 表名 SET 字段 = '字段'+1 WHERE id = '@id' 

#4


默认值太难了,你想智能的话,搞个触发器吧

#5


引用 3 楼 swde125 的回复:
SQL code
UPDATE 表名 SET 字段 = '字段'+1 WHERE id = '@id'


.是默认值哦

#6


自定义一个function 在字段的default默认设置这个function就OK啦

#7


搞个自动增长不行么???

#8


1、你的这个字段必须是数字类型的。
2、设置默认值可以在表中直接设置的。
3、取最大值 max(isnull(filename,0))+1
看下这个字段是否为空,如果为空的话,就给0,然后+1.
试一试。没写过,嘿嘿。

#9


引用 8 楼 mangchao330688 的回复:
1、你的这个字段必须是数字类型的。
2、设置默认值可以在表中直接设置的。
3、取最大值 max(isnull(filename,0))+1
看下这个字段是否为空,如果为空的话,就给0,然后+1.
试一试。没写过,嘿嘿。


不行哦

#10


为什么要+1????

#11


Declare @lastNo varchar(50);
Declare @nextNo varchar(50);
Declare @tmpStr varchar(50);

Select @lastNo = isNull(Max([No]),'-00000000') From AAA

Select @tmpStr = '00000000' + cast(Substring(@lastNo, 3, 8) + 1 as varchar)
Select @nextNo = '-' + Substring(@tmpStr, len(@tmpStr) - 7, 8)

#12


select max(value)+1 

#13


都不行