【发布时间】:2017-03-06 22:19:02
【问题描述】:
我想为序列中的列设置一个默认值,就像 here 所做的那样,但还要在序列前面添加一个值,以便保存在表中的值看起来像 P123。这可能吗?
【问题讨论】:
-
字母总是P吗?无论如何,我认为您不能将序列保留为 int。我会根据您的序列列虚拟化另一列。
-
@scsimon,在这种情况下,是的,它总是“P”。通过虚拟化,您的意思是像计算列吗?我是否需要两列来执行此操作(一列用于序列,一列用于计算值)?或者看起来怎么样?
-
两者都正确。序列列需要保持为 int,计算列将是该列和 P 的串联。类似于stackoverflow.com/a/24729386/6167855
-
@scsimon,我刚刚了解到我无法做到这一点,因为我们将不得不从另一个系统回填现有值。所以它需要是一个默认值,如果存在现有值,我们可以显式设置。
-
@scsimon,没关系。我在我的问题中重新阅读了该帖子,似乎由于该列仅使用序列值作为默认值,因此仍可以将显式值添加到该列,然后计算列将拾取它。
标签: sql-server sql-server-2014 tsql-sequence