Sql server 使用len()作为update语句的参数

Sql server 使用len()作为update语句的参数,sql-server,tsql,Sql Server,Tsql,是否可以像这样运行更新 update products set title = name+' - '+ id where len(name+' - '+id) < 255 updateproducts set title=name+'-'+id,其中len(name+'-'+id)

是否可以像这样运行更新

update products set title = name+' - '+ id where len(name+' - '+id)  <  255
updateproducts set title=name+'-'+id,其中len(name+'-'+id)<255
在mssql中

我一直在尝试更新一个文本字段,但如果结果超过255个字符,我就无法更新。根据我们的购物车提供商的说法

编辑:
很抱歉,我没有指定我要找的是什么,我已经尝试过了,但是得到一个错误,说结果将被截断。我想我真正想问的是,是否有一种方法可以完成我在示例中尝试的操作,即仅在更新数据短于255个字符时进行更新

除非标题字段不是255,否则代码应该可以运行。这就是我所做的,它成功了

create table #temp 
(
    name varchar(20),
    Title varchar(20),
    id varchar(3)
)

Insert into #temp
SELECT '1111111111', '', 100
UNION 
SELECT '111111111111', '', 101
UNION 
SELECT '11111111111111', '', 102
UNION 
SELECT '1111111111111111', '', 103
UNION 
SELECT '111111111111111111', '', 104


UPDATE #temp
SET title = name+' - '+ id 
WHERE len(name+' - '+id)  <=  20


SELECT * FROM #Temp
create table#temp
(
名称varchar(20),
标题varchar(20),
id varchar(3)
)
插入#temp
选择'1111111','',100
联合
选择'111111','',101
联合
选择'11111111'、''、102
联合
选择'1111111','',103
联合
选择'111111111','',104
更新#临时
设置标题=名称+'-'+id

WHERE len(name+'-'+id)您遇到了什么错误?你试过了吗?我试过了,我得到一个错误,说结果将被截断。标题的大小是多少?我检查时有255个字符。但是,我们的商业网站的托管公司告诉我,他们将其限制在240到250之间,我尝试得较少,但也遇到了同样的问题。你能用一些示例数据发布你的表结构吗。