在sql server中一次更新所有字段

时间:2011-09-20 18:07:36

标签: sql-server

我有一种情况,我想在DB中应用表的url字段。例如..所有的URL都是格式

  ~/production/Class_ext/MgrLoginChoices.asp?menu1=Instruct

现在我需要将它们更改为格式

 ~/Secure/production/Class_ext/MgrLoginChoices.asp?menu1=Instruct

我只需要在所有内容之前添加一个Secure文件夹。我不想手动做。有没有办法可以用查询更新..请帮帮我..谢谢。

2 个答案:

答案 0 :(得分:5)

单程

update Table
SET URL = replace(URL,'~','~/Secure')
WHERE URL LIKE '~%'

请记住,如果你在列中有超过1个,那么将改变所有〜,然后使用下面使用STUFF的方法

您也可以使用 STUFF

update Table
SET URL = STUFF(URL,3,0,'Secure/')
WHERE URL LIKE '~%'

您可以运行

的示例
DECLARE @v VARCHAR(100)
SELECT @v = '~/production/Class_ext/MgrLoginChoices.asp?menu1=Instruct'

SELECT @v, STUFF(@v,3,0,'Secure/')

答案 1 :(得分:1)

update urls
set url = '~/secure' + right(url, len(url) -1);