我最近更改了保存大量“估算”文件的驱动器的结构。
问题是,我使用的程序引用了旧结构中存储在 SQL 数据库中的一些文件。
我希望能够使用 SQL 查询将“ImagePath”列中的字符串开头替换为新文件路径。或者有人能建议一种更好的方法吗!?
旧结构是:
X:\Estimating Dept\Estimating Files\Estimates\E28000 - E28999\E28600 - E28699\E28654\...
我需要新的文件路径为:
S:\E28xxx\6xx\54\...
我尝试过以下 SQL 命令:
UPDATE BidPages SET ImagePath = REPLACE(ImagePath,"X:\Estimating Dept\Estimating Files\Estimates\E28000 - E28999\E28600 - E26899\E28654","S:\Estimates\E28xxx\6xx\54\")
在 Microsoft SQL Server Management Studio 2008 中,但出现错误:
Msg 207, Level 16, State 1, Line 4 Invalid column name 'X:\Estimating Dept\Estimating Files\Estimates\E28000 - E28999\E28600 - E28699\E28654'. Msg 207, Level 16, State 1, Line 4 Invalid column name 'S:\Estimates\E28xxx\6xx\54\'.
我想要更新的表名是dbo.BidPages
,列名是ImagePath
。
此外,有没有办法根据原始文件路径增加文件路径中的数字?
答案1
我刚刚意识到我需要使用单引号,而不是双引号。