我有一個允許用戶將文件附加到SQL Server 2005數據庫的.Net應用程序。我想限制文件大小爲10MB,所以從我可以告訴的是,我必須聲明數據類型varbinary(max),因爲我實際可以指定的最大大小是8000字節。但〜2GB文件大小varbinary(max)允許看起來像矯枉過正。有沒有辦法讓我把它限制在10MB的數據庫中,還是隻需要檢查他們是不是試圖在前端添加更大的東西。將SQL Server 2005數據庫的文件附件限制爲值> 8000字節
3
A
回答
0
我認爲你需要在前端製作它。你可以像在web.config限制HTTP請求大小:
</configuration>
</system.web>
<httpRuntime maxRequestLength="60000"/>
</system.web>
</configuration>
您可能還需要明確檢查公佈的文件大小,當用戶嘗試上傳文件超過指定的閾值。
0
在ASP.NET中,您已經對上傳大小(默認值:4MB IIRC)有限制。你可以使用它來限制你的下載。
海事組織它會更好,因爲它的數據庫路徑越早,所以你最大限度地減少服務器上的過載。
唯一的缺點是,如果用戶嘗試上傳大於ASP.NET限制的文件,用戶將看到一個錯誤頁面。
0
啊 - 我的錯。這是一個VB.Net桌面應用程序。我忘了提到這一點。但我可以想象,必須在前端處理它的建議仍然成立。
感謝
0
我會檢查你的應用程序文件的限制,你不想去通過將其插入到數據庫的過程中,只是爲了找出它是太大了。
一個小小的應用程序邏輯可以節省時間,並提供更好的用戶體驗。
2
使用varbinary(max)完全沒問題,因爲它是varbinary,所以只能使用內容需要的地方,最多2個演出。但是,您可以在數據庫中添加CHECK CONSTRAINT,檢查上傳的數據長度()。我寧願只檢查應用程序中的上傳。
2
稍微偏離主題: 雖然這當然是可能的,但我發現將附件直接存儲在數據庫中通常是一個壞主意。
主要問題是由於大附件導致整個數據庫大小的爆炸性增長,這使得備份和其他日常維護變得更加困難。
簡單地將文件的路徑信息存儲在數據庫中,並將實際文件存儲在共享網絡文件夾中是我推薦考慮的一種選擇。 (當然,這意味着你現在不得不擔心網絡文件許可和其他一些問題,但在許多情況下仍然是更好的選擇)。
0
看起來這將是限制附件的最佳做法大小在前端和數據庫中。 Kaboing的檢查約束解決方案似乎適合事物的數據庫方面。
相關問題
- 1. sql server 2005附加數據庫中斷
- 2. 將SQL Server 2008數據庫附加到SQL Server 2005時失敗
- 3. SQL Server 2005數據庫郵件故障
- 4. 如何在SQL Server 2005數據庫文件轉換爲Excel
- 5. 將數據庫從SQL Server 2005更改爲SQL Server 2008
- 6. 將sql server 2008數據庫轉換爲sql server 2005
- 7. SQL Server 2005,收縮複製數據庫
- 8. 在將sql server 2005數據庫轉換爲sql server數據庫時出錯2000
- 9. SQL Server中的超時和sql express 2005中的數據庫附件?
- 10. 將文本文件附加到SQL-Server 2005中的表格之前從數據文件中提取數據DTS
- 11. 備份爲bak文件或附加/分離SQL Server數據庫?
- 12. 如何將SQL Server 2005數據庫附加到SQL Server 2012實例
- 13. 的SQL Server數據庫2005配置文件路徑加載
- 14. 使用數據將MySql數據庫轉換爲MS SQL Server 2005?
- 15. SQL Express 2005,安全數據庫文件
- 16. 無法將文件附加爲數據庫。 SQL Azure的
- 17. SQL Server 2005數據庫日誌文件很大,完整
- 18. sql server 2005鏡像數據庫事務日誌文件維護
- 19. 如何從SQL Server 2005數據庫中刪除脫機文件
- 20. 使用Access 2003 ADP/Project文件訪問SQL Server 2005數據庫
- 21. app.config文件爲SQL Server 2005 2008
- 22. 如何將SQL Server 2008數據庫與SQL Server 2005數據庫進行同步?
- 23. 將數據庫從SQL Server 2008還原到SQL Server 2005
- 24. 如何將SQL Server 2005數據庫遷移到SQL Server 2008?
- 25. 如何將SQL Server 2005表導出到SQL Server Compact數據庫
- 26. 將Sql Server 2005數據庫導入Sql Server express 2008
- 27. 將數據庫從SQL Server 2000遷移到SQL Server 2005
- 28. 將數據庫從SQL-Server 2005傳輸到SQL-Server 2008
- 29. 將SQL Server Express數據庫遷移到SQL Server 2005
- 30. 如何將數據庫從SQL Server 2008導出到SQL Server 2005
你能想到一個不做應用程序和數據庫端檢查的理由嗎? – Solracnapod 2008-10-29 03:03:39