如何在ASP.NET中上傳檔案到資料庫
上回談到了如何下載檔案,包含資料庫中的檔案,動態產生的檔案...等。
這次我們來看看怎麼把檔案上傳到資料庫中,這邊需要注意一個小地方,在上傳檔案到資料庫的部分,資料欄位的性態若是Access請選擇Ole物件,若是SQL Server請選擇Image格式。
接著您可以通過下面的程式碼進行檔案的上傳:
If Me.FileUpload1.PostedFile.ContentLength > 0 Then
Dim cn As New Data.OleDb.OleDbConnection
Dim dc As Data.OleDb.OleDbCommand
Dim para As Data.OleDb.OleDbParameter
Dim SQL, FileName As String
'連線字串
cn.ConnectionString = Me.AccessDataSource1.ConnectionString
cn.Open()
'執行 TextBox 中的 SQL 指令
FileName = Me.FileUpload1.PostedFile.FileName
SQL = "insert into FileStorage (FileName,FileBody) values ('" & FileName & "',?)"
'建立 SqlCommand 物件
dc = New Data.OleDb.OleDbCommand(sql, cn)
para = New Data.OleDb.OleDbParameter("file", Data.OleDb.OleDbType.Binary)
para.Value = Me.FileUpload1.FileBytes
dc.Parameters.Add(para)
'執行(通過 Parameters 將檔案儲存到資料庫)
dc.ExecuteNonQuery()
ShowAlertMsg("上傳檔案儲存完畢!")
Else
ShowAlertMsg("上傳檔案不存在!")
End If
上傳至資料庫中的檔案,可以通過下面的方式重新下載回來,請特別這注意這張網頁在呼叫的時候必須提供檔案編號做為URL中的命令列引數:
Me.AccessDataSource1.SelectCommand = "select * from FileStorage where uid=" & Request.QueryString("FileID")
Dim dv As Data.DataView = Me.AccessDataSource1.Select(New DataSourceSelectArguments)
'準備下載檔案
Response.ClearHeaders()
Response.Clear()
Response.Expires = 0
Response.Buffer = True
Dim fileName As String = dv.Item(0).Item("FileName")
'通過 Header 設定檔名
Response.AddHeader("content-disposition", "attachment; filename=" & Chr(34) & System.Web.HttpUtility.UrlEncode(IO.Path.GetFileName(fileName), System.Text.Encoding.UTF8) & Chr(34))
Response.ContentType = "Application/octet-stream"
'傳出要讓使用者下載的內容
Response.BinaryWrite(dv.Item(0).Item("FileBody"))
'釋放資源
Response.End()
整個範例請參考:
http://video.studyhost.com/Download/Example/ASP.NET/FileUploadAndDownloadWithDB.rar
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1869097
相關文章
- 【趙勳】在ASP.NET應用程式中上傳檔案ASP.NET
- 如何在伺服器環境中上傳下載檔案伺服器
- ASP.NET Core 上傳檔案到共享資料夾ASP.NET
- 關於Vue專案中上傳檔案到阿里雲OSSVue阿里
- Mac終端中上傳檔案到Linux伺服器MacLinux伺服器
- element-ui中上傳檔案uploadUI
- 把影像檔案上傳到資料庫,並從資料庫讀出 (轉)資料庫
- Struts中上傳檔案需要注意的地方
- ssis 寫檔案到資料庫資料庫
- Asp.net WebApi 傳遞json資料以及上傳檔案ASP.NETWebAPIJSON
- 遷移資料庫檔案到ASM資料庫ASM
- Bak檔案恢復到資料庫資料庫
- 大檔案上傳後,queue 解析到資料庫一些點資料庫
- 在Spring Boot程式中上傳和下載檔案Spring Boot
- 把資料庫控制檔案備份到跟蹤檔案資料庫
- 怎麼把本地資料庫檔案上傳到雲伺服器ecs資料庫伺服器
- winfrom上傳多個檔案到指定資料夾
- 建立資料庫檔案-日誌檔案-次要資料庫檔案資料庫
- 連線到 ASP.NET 資料庫ASP.NET資料庫
- 如何在ASP.NET中下載檔案ASP.NET
- 把csv檔案的資料匯入到oracle資料庫中Oracle資料庫
- 【資料遷移】RMAN遷移資料庫到ASM(二)切換資料檔案到ASM資料庫ASM
- 資料檔案在網路“裸奔”,如何在網際網路中進行檔案傳輸?
- ASP.NET Core 檔案上傳ASP.NET
- window下刪除過舊的日誌檔案指令碼(如jboss的日誌檔案 資料庫的trace檔案)指令碼資料庫
- Chrome不能在網易網盤中上傳檔案的解決辦法Chrome
- [Git命令]上傳單個檔案到GitHub專案已有資料夾Github
- 資料庫檔案和檔案組資料庫
- 【Git/Github】向已有倉庫上傳檔案/資料夾Github
- MySql資料庫——檔案MySql資料庫
- 遷移資料庫的檔案到不同路徑(轉)資料庫
- 使用RMAN遷移檔案系統資料庫到ASM資料庫ASM
- selenium 中上傳檔案在 hub 分發機制中,node 上瀏覽器中上傳的是 hub 機上的檔案,這個是怎麼實現的?瀏覽器
- 用ASP.NET上傳大檔案ASP.NET
- 如何在 Linux 上覆制檔案/資料夾到遠端系統?Linux
- ASP.NET在刪除掉資料庫檔案後報錯處理ASP.NET資料庫
- 【流雲】利用DBMS_FILE_TRANSFER傳輸資料庫檔案資料庫
- winscp傳檔案到windows,winscp傳檔案到windows有三步Windows