【发布时间】:2016-09-30 07:45:22
【问题描述】:
是否有可能更改计算列的某些值?我们需要它,因为这些值连接到另一个系统,其中三个必须更改。
我们的计算列如下所示:
('Product-'+CONVERT([NVARCHAR](100),(1000)+[Id],(0)))
我现在必须将值 Product-1356、Product-1655 和 Product-1701 更改为 Product-12、Product-17 和 Product-18(示例值)。这三个必须是硬编码的。其余的必须像以前一样计算。
我已经尝试使用 T-SQL 正常更新它:
UPDATE MyTable
SET ProductId = 'Product-12'
WHERE ProductId = 'Product-1356'
但现在我收到以下错误:
无法修改列“ProductId”,因为它是计算列或者是 UNION 运算符的结果。
更新Id 列也不起作用,因为它是主键:
无法更新身份列“Id”。
我该怎么做?有可能吗?
【问题讨论】:
标签: sql-server tsql sql-server-2014 calculated-columns