2016-11-21 78 views
1

我已在SQL中加入了独特的ID的字段2014管理工作室SQL:添加唯一的ID,并追加一个字符串

ADD MY_ID INT IDENTITY (1,1) 

以下是有办法,我还可以追加下一个固定的文本唯一的ID?

问题在于列被设置为INT开始,即使我添加两列,其中一个设置为ID,另一个设置字符串,我无法在没有转换的情况下对其进行转换。

换句话说,我可以这样做:

ADD MY_ID INT IDENTITY (1,1) + "Myfile.docx" 

感谢

+1

不,但您可以添加一个结合了标识+字符串的varchar数据类型的计算列。 ? – xQbert

+0

所以.. ALTER TABLE MTABLE ADD CONCAT_COLUMN VARCHAR(255)“Myfile.docx“ 有没有办法做操作和下单成交串联 – Aram

+0

我得到如下:消息245,级别16状态1,第55行 转换将varchar值 'mytable.doc' 转换为数据类型int时失败。 领域是VARCHAR 更新[MYTABLE] 组CONCAT_FIELD =添加my_id + 'mytable.doc' – Aram

回答

2

你可以改变你的表并添加计算列:
看到这个https://msdn.microsoft.com/en-us/library/ms188300.aspx

alter table dbo.MyTable 
add MyComputedID as convert(varchar, my_id) + 'Myfile.docx' 

,或者你可以创建视图:

create view dbo.vwMyTable as 
    select my_id, 
      foo1, 
      foo2, 
      ... 
      convert(varchar, my_id) + 'Myfile.docx' as MyComputedID 
    from dbo.MyTable 
+0

完美谢谢! – Aram

相关问题