親愛的所有 如何插入媒體文件,如* .mepeg或* .MP3,在..... SQL Server文件插入媒體文件
插入媒體文件
回答
USE pubs
CREATE TABLE mycustomertable
(
user_login DEFAULT SUSER_SID,
data_value
)
INSERT mycustomertable (data_value)
VALUES (0x4F)
如果您發佈代碼或XML,請**在文本編輯器中突出顯示這些行,然後單擊「代碼」按鈕(101 010)在編輯器工具欄上進行良好的格式化和語法突出顯示! – 2010-10-13 19:09:48
我傾向於同意@JoshD,但是如果你要必須在數據庫中存儲二進制文件如數字視頻/音頻,SQL Server提供了the varbinary
datatype。
請注意,此類型的默認最大長度爲8000字節 - 可能沒有足夠的平均音頻/視頻文件存儲容量。注意使用的varbinary(max)
爲比8K極限更大的數據:
max指示最大存儲 大小爲2^31-1字節。
如果有問題的數據庫有DBA(例如,在您的工作地點),那麼您將無限期地與他/她討論使用varbinary並突破8K限制的問題。這應該沒問題,但那是由該系統的負責人管理的。 – David 2010-10-13 18:08:21
@David同意!再說一遍,我幾乎不推薦上述方法來存儲其他地方的大文件,但瞭解它的存在很有用。 :) – 2010-10-13 18:09:42
- 應該將文件存儲在數據庫中嗎? To BLOB or Not to BLOB:
研究表明,如果對象 比上 平均一兆字節大,NTFS有着明顯的優勢 在SQL Server中。如果對象是在256千字節以下的 ,則數據庫具有 的明顯優勢。在此範圍內,它取決於系統中的寫入密集型工作負載以及典型副本的存儲時間。
- filestream怎麼樣? FILESTREAM Storage in SQL Server 2008。
有這個簡單的話題更多的問題,當一個人開始考慮高可用性和災難恢復能力的要求,需要有一個一致的備份恢復策略,媒體是否通過HTTP接口訪問的問題從數據庫返回內容的URL的處理開銷,等等。
但要回答這個天真的問題:將媒體文件作爲VARBINARY(MAX)
列存儲在數據庫中。你在客戶端操作它們爲SqlBinary
類型。在處理大型BLOB時,必須使用流式語義,如使用CommandBehavior.SequentialAccess
(如Retrieving Large Data (ADO.NET)中所述)。如果需要Win32 API訪問,則必須使用FILESTREAM類型。有關該主題的更多閱讀材料,樣本號爲SQL Server Binary and Large-Value Data (ADO.NET)。
哦,在我忘記之前:您還需要列來存儲文件元數據,如其名稱和類型。如果媒體通過HTTP響應進行流式傳輸,則需要添加content-disposition
和content-type
標頭。
+1爲非常全面的答案! – 2010-10-13 18:39:04
- 1. RichTextBox插入媒體文件(如視頻)
- 2. tinymce媒體插件
- 3. tinyMCE媒體嵌入,與媒體插件在PHP + MySql
- 4. 媒體上傳插入後沒有插入文本字段
- 5. ngCordova媒體插件異常
- 6. Facebook社交媒體插件
- 7. Ionic 2媒體插件
- 8. CakePHP媒體插件和SWFUpload
- 9. Windows媒體中心插件
- 10. CakePHP的媒體插件
- 11. Windows媒體服務插件
- 12. WordPress的媒體按鈕「插入後」不返回文件的URL
- 13. 嵌入遠程媒體文件
- 14. Hadoop流媒體與zip輸入文件
- 15. 用離子掃描媒體文件使用文件cordova插件
- 16. 無媒體嵌入推文
- 17. 插入非媒體(pdf,txt,doc)android
- 18. Wordpress插入媒體停止工作
- 19. 流媒體插入和表裝飾
- 20. jQuery的媒體插件與替代媒體播放器問題
- 21. phonegap 4.0媒體插件ReferenceError:媒體未定義
- 22. 附加組件媒體中心插件
- 23. CakePHP中的媒體文件轉換器插件/組件
- 24. PHP媒體存儲,媒體輸入頁
- 25. 處理媒體文件 - IOS
- 26. iOS流媒體MP3文件
- 27. 流媒體音頻文件
- 28. 媒體文件失敗Django
- 29. 加載媒體文件
- 30. WCF流媒體文件
什麼版本的SQL Server? 2008年添加了FileStream,這是一種將文件系統和數據庫進行存儲的混合體。否則,您需要存儲二進制數據,通常在數據庫中稱爲BLOB ... – 2010-10-13 18:09:10