Sql server “你能”吗;更改“;视图中的数据?

Sql server “你能”吗;更改“;视图中的数据?,sql-server,alter,sql-view,Sql Server,Alter,Sql View,我们公司多年来在客户ID中添加了一个&。现在,我们正在做这个云计算的事情,&’引起了一些问题 我有一个视图,我需要在customerID字段中将“&”改为“u” 有办法吗 谢谢 Onyx以下SQL语句将“&”替换为下划线“\ux” select replace('A&C','&','_') 在你的情况下,你会有一个像 select replace([customerID],'&','_') 不能直接从视图中更改表或数据值,因为视图是多个表的结果集。它是

我们公司多年来在客户ID中添加了一个&。现在,我们正在做这个云计算的事情,&’引起了一些问题

我有一个视图,我需要在customerID字段中将“&”改为“u”

有办法吗

谢谢


Onyx

以下SQL语句将“&”替换为下划线“\ux”

    select replace('A&C','&','_')
在你的情况下,你会有一个像

    select replace([customerID],'&','_')

不能直接从视图中更改表或数据值,因为视图是多个表的结果集。它是一种动态的,这意味着您可以选择在从视图中看到更改之前,先更改特定表中的数据。使用
updatetable Set col=replace(col,,&?您可以发布您的表结构和视图吗?使用参数和URL编码/解码,并且&’不应该是一个问题。您有多种可能的解决方案。选择值时的
REPLACE()
功能(建议如下);URL编码值,在数据中保留符号和;或者用下划线(或选择的任何值)更新基础数据,然后不再担心它。我决定将视图复制到一个表中,并在那里更新数据。更新
onyxinvoicesummary
SET CustomerID=replace([CustomerID],“&',“"”),其中CustomerID类似“%&%”;虽然没有我想要的那么优雅,但它完成了任务。虽然我真的很想在每次都不必接触流程的情况下完成此操作。但有两件事:(1)我们还没有确定特定视图实际上是否来自多个表,以及(2)可以通过多表视图进行更新,只要所有更新都针对一个表(更高版本的SQL Server)。