2016-10-22 65 views
0

日安堆棧溢出我的MySQL數據庫,保存圖片在VB.NET

我試圖將照片保存在我的MySQL數據庫,我想我會用BLOB是否正確?

我打算更新已託管的在線支持上傳和顯示圖片,我在vb.net的項目我的MySQL數據庫,

我知道該怎麼保存圖片在mysql數據庫的最簡單的方法是通過節約目錄中的圖片並僅將路徑放入數據庫中,但對於在因特網中託管的在線數據庫並且沒有工作目錄,該怎麼辦?我的意思是數據庫本身?

我如何優化圖片加載的時間訪問權限?

+0

可能重複的[如何使用vb.net和adodb連接在mysql數據庫中插入圖像](http://stackoverflow.com/questions/24924982/how-to-insert-image-in-mysql-database-using -VB淨和ADODB連接) –

回答

0
Protected Sub UpLoadThisFile(ByVal upload As FileUpload) 
    If UpL1.HasFile Then 
     Dim fileName As String = Path.GetFileName(UpL1.PostedFile.FileName) 
     UpL1.PostedFile.SaveAs(Server.MapPath("~/AltImg2/") + fileName) 
     UpImag.ImageUrl = ("~/AltImg2/") + fileName 
     T8.Text = ("~/AltImg2/") + fileName 
    Else 
     T8.Text = "~/NOPic/noimage.jpg" 
    End If 
End Sub 

Protected Sub CheckImag() 
    If UpL1.HasFile Then 
     Dim ValidatFileTy As String() = {"bmb", "gif", "png", "jpg", "jpeg"} 
     Dim Ext As String = System.IO.Path.GetExtension(UpL1.PostedFile.FileName) 
     Dim isValidFile As Boolean = False 
     For i As Integer = 0 To ValidatFileTy.Length - 1 
      If Ext = "." & ValidatFileTy(i) Then 
       isValidFile = True 
      End If 
     Next 
     If Not isValidFile Then 
      MsgLbl.Visible = True 
      MsgLbl.ForeColor = Drawing.Color.Red 
      MsgLbl.Text = String.Join(",", ValidatFileTy) 
      Exit Sub 
     Else 
      UpLoadThisFile(UpL1) 
     End If 
    Else 
     UpLoadThisFile(UpL1) 
    End If 
End Sub 

和按鈕

Protected Sub BTAddNew_Click(sender As Object, e As EventArgs) Handles BTAddNew.Click 
    Try 
     CheckImag() 
     Insert() 
     Catch ex As Exception 
     MsgBox(ex.Message) 
    End Try 
End Sub 

但如何針對在互聯網託管,沒有工作目錄在線數據庫? 是的,你必須使用〜(「〜/ AltImg2 /」)。