0
我有数据库我找不出如何更新列,因为它是在每次调用生成的表上。以下是调用相关列的代码:更新记录在SQL
select
a.itm_num as item_no,
a.itm_proddesc as title,
CAST(d.content as varchar(max)) as product_description
from item as a
join assignment as b on b.itm_id = a.itm_id
join attachment as c on c.att_id = b.att_id
join digitalassetcontent as d on d.content_key = c.content_key
where c.att_type like 'text%'
我需要更新product_description字段。我们在这个专栏中有数千个在实际文本前面有HTML编码的entrys。我需要运行一个查找和替换来删除文本之前的html编码。每个文本之前的HTML代码是完全一样的,这里是需要删除的内容:<STYLE>H1{font-weight:bold}H1{font-size: 14pt}OL</STYLE><H1>Product Description</H1>
我用@Joel Coehoorn解决方案运行了下面的代码,并带有需要更新的内容密钥,并且它启动了'消息4104,级别16,状态1,行13 多部分标识符“d.content”无法绑定。
select
a.itm_num as item_no,
a.itm_proddesc as title,
CAST(d.content as varchar(max)) as product_description
from item as a
join assignment as b on b.itm_id = a.itm_id
join attachment as c on c.att_id = b.att_id
join digitalassetcontent as d on d.content_key = c.content_key
where c.att_type like 'text%'
Update digitalassetcontent
set content = replace(CAST(content as varchar(max)), '<STYLE>H1{font-weight:bold}H1{font-size: 14pt}OL</STYLE><H1>Product Description</H1>','')
where CAST(content as varchar(max)) like '<STYLE>H1{font-weight:bold}H1{font-size: 14pt}OL</STYLE><H1>Product Description</H1>%' AND content_key = 'desc214974236480438500781058983745755010'
谢谢!
马特
领域的实际类型是VARBINARY和最大字符长度表示-1 只是让我可以测试第一,并确保一切是犹太教,我将如何运行上面只是对某一个项目编号和代码不是所有的项目?例如,我们使用项目编号“AA100”,在我的第一篇文章中初始调用中生成的列名被称为“item_no”。 –
@MattWeick我会查找您要测试的特定内容密钥,而不是项目编号。 –
如果您需要帮助,则可能需要退出数据库。 –