我正在尝试在将新文档添加到sql表时自动生成文档引用号 - 引用号是该表中某些其他字段的连接。
在线查看我可以看到一种方法是使用dbid函数生成一个uid然后创建一个函数来连接,然后在insert上的表上触发器来填充列,但是我花了很多时间而且我不能得到它起作用。
该表格包含以下列: -
Table:- dbo.codeallocations21322
Columns :-
Dbid
Projectcode
Type
Discipline]
Hdlreference
因此hdlreference列将填充: -
[projectcode]-[type]-[discipline]-[bdid]
将[bdid]设置为6个字符。
例如21322-rfq-mech-000001
任何帮助都会非常感激/建议更好的方式吗?
非常感谢提前。
答案 0 :(得分:1)
您可以使用computed column
alter table codeallocations21322
add hdlreference
as ( projectcode + '-' + type + '-' + discipline + '-' + dbid);
答案 1 :(得分:0)
非常感谢John - 略微改变了将Int dbID转换为varchar并且效果很好: -
alter table CodeAllocations21322
add hdlreference2
as (ProjectCode + '-' + Type + '-' + Discipline + '-' + right('00000' + Cast (dbID AS varchar(5)), 5));
再次感谢,期待将来与您交谈。