2017-02-14 7 views
0

SQLデータベースに画像URLが保存されていますが、画像のソースが最近信頼できず、ページの読み込み時間が長くなります。私のデータベースの内容は定期的に更新されます。イメージをローカルに保存し、サーバーファイルパス経由でページにイメージを表示する方法がありますか?ほとんどの画像や1 MB以上のため、SQLに直接BLOBとして保存しないように言われました。私はASP、HTML、SQL Serverを使用していますSQL - SQLデータベースの格納されたimg URLをローカルファイルパスに変更する

答えて

0

次のようなことができます:ピクチャへのパスを保存する列を作成します。 enter image description here

は、その後のImagePathに入力します。各画像/画像

C:Users/JohnDoe/Documents/Pictures/SQLimages/JohnDoe.jpg 

の更新のために! 例として選択したディレクトリに画像を保存します。 現在、あなたの表は次のようになります。

ID   ImagePath 
--------------------------------- 
1    \\fakeURL\image111 
2    \\fakeURL\image222 
3    \\fakeURL\image333 
4    \\fakeURL\image444 

をあなたは(これは、ローカルパスに現在のURLパスに置き換えられます

UPDATE dbo.yourDatabase 
SET Value = REPLACE(Value, '\fakeURL\', '') 
WHERE ID <=100000 --arbitrary number can be any number 

このスクリプトを実行することができますローカルフォルダを選択するためにあなたのイメージを保存した後手動でパス名を入力する必要はありません)。

+0

私はURLを保存していますので、これを使用して手動で各画像を保存してファイルパスを追加する必要があります。私は何千もの記録を持っています – user3617347

+0

残念ながら、データ(画像のパス)を提供する必要があります。写真をローカルに保存する場合は、パスが変更され、パスを変更する必要があります。画像への参照を更新するためのクエリを書くことができます。あなたのテーブルをどのように構造化したかを見ずに、あなたの質問に答えるのは非常に難しいです。 – Krishneil

+0

セットアップは非常に基本的なものです。imgurlという名前の列がイメージのWeb URLにあると仮定し、filepath列を保存してローカルファイルパスを – user3617347

関連する問題