最近、多くの「見積もり」ファイルを保存しているドライブの構造を変更しました。
問題は、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
二重引用符ではなく一重引用符を使用する必要があることに気付きました。