【问题标题】:Auto Increment userdefined id自动递增用户定义 id
【发布时间】:2010-08-30 08:39:17
【问题描述】:

您好,谁能告诉我如何创建一个自动生成的 id,如 ED01、ED02 等,这样当我输入数据时,id 应该自动递增

【问题讨论】:

  • 为什么不使用自动递增的主键字段,然后在必要时使用前缀字段?做输出的时候,把两者结合起来就可以得到ED01ED02等。
  • ED99之后我会显示ED100
  • 您是否要求值
  • 还有一个重要的问题:数字之间的差距是否允许?如果不是,那么 IDENTITY 不是解决方案,您必须使用触发器或在客户端实现某些东西。

标签: sql sql-server vb.net sql-server-2005


【解决方案1】:

可以说这在客户端会更好,但你可以

测试脚本

DECLARE @ED TABLE (
  ID INTEGER PRIMARY KEY IDENTITY(1, 1)
  , UserID AS 'ED' + CAST(ID AS VARCHAR(32))
  , I INTEGER
)

DECLARE @I INTEGER
SET @I = 0
WHILE @I < 100
BEGIN
  SET @I = @I + 1
  INSERT INTO @ED VALUES (@I)
END

SELECT * FROM @ED

【讨论】:

    猜你喜欢
    • 2022-11-15
    • 1970-01-01
    • 2013-03-06
    • 1970-01-01
    • 2010-10-04
    • 2015-03-10
    • 1970-01-01
    • 2019-06-06
    • 2023-03-30
    相关资源
    最近更新 更多