Tôi cần lưu trữ các tệp nhị phân vào Cơ sở dữ liệu SQL Server. Loại dữ liệu nào tốt hơn trong Varbinary và Image?VarBinary vs Image SQL Server Kiểu dữ liệu để lưu trữ dữ liệu nhị phân?
Trả lời
Vì hình ảnh không được chấp nhận, bạn nên sử dụng varbinary.
mỗi Microsoft(nhờ các liên kết @Christopher)
ntext, các loại văn bản, và dữ liệu hình ảnh sẽ được gỡ bỏ trong một phiên bản tương lai của Microsoft SQL Server. Tránh sử dụng các loại dữ liệu này trong tác phẩm phát triển mới và có kế hoạch sửa đổi các ứng dụng hiện đang sử dụng chúng. Sử dụng nvarchar (max), varchar (max), và varbinary (max) để thay thế.
Loại dữ liệu cố định và có độ dài thay đổi để lưu trữ lớn không phải Unicode và Ký tự Unicode và dữ liệu nhị phân. Dữ liệu Unicode sử dụng bộ ký tự UNICODE UCS-2 .
varbinary(max)
là con đường để đi (giới thiệu trong SQL Server 2005)
Ngoài ra còn có các thay spiffy FileStream
, được giới thiệu trong SQL Server 2008.
spiffy: * thông minh xuất hiện *? – Liam
'khá giả tạo' có ý nghĩa tổng quát hơn một chút (chỉ là 'lốm đốm') bằng tiếng mẹ đẻ phổ biến ... Hầu hết tôi nghĩ. – Grantly
Câu hỏi này là về các định dạng cột và 'FileStream' chỉ là một hành vi lưu trữ. Filestream được thực hiện bằng cách sử dụng 'varbinary (max)' và thực hiện các thay đổi đối với cá thể máy chủ sql của bạn. – paqogomez
https://docs.microsoft.com/en-us/sql/t-sql/data-types/ntext-text-and-image-transact-sql
image
Dữ liệu nhị phân có độ dài thay đổi từ 0 đến 2^31-1 (2.147,483,647) byte. Tuy nhiên nó được hỗ trợ để sử dụng hình ảnh datatype, nhưng chú ý đến:
https://docs.microsoft.com/en-us/sql/t-sql/data-types/binary-and-varbinary-transact-sql
varbinary [(n | max)]
Variable-length dữ liệu nhị phân. n có thể là giá trị từ 1 đến 8.000. max cho biết dung lượng lưu trữ tối đa là 2^31-1 byte. Kích thước bộ nhớ là độ dài thực tế của dữ liệu được nhập + 2 byte. Dữ liệu được nhập có thể là 0 byte ở độ dài . Từ đồng nghĩa SQL ANSI cho varbinary là nhị phân khác nhau.
Vì vậy, cả hai đều có kích thước bằng nhau (2GB). Nhưng chú ý đến:
Mặc dù phần cuối của "hình ảnh" datatype vẫn chưa được xác định, bạn nên sử dụng "tương lai" bằng chứng tương đương.
Nhưng bạn phải tự hỏi: tại sao lưu BLOBS trong cột?
- 1. Dữ liệu nào có thể được lưu trữ trong kiểu dữ liệu varbinary của SQL Server?
- 2. SQL Server varbinary (max) đến kiểu dữ liệu hình ảnh
- 3. Ad-hoc retreival dữ liệu từ SQL Server varbinary cột
- 4. Làm cách nào để lưu trữ tệp nhị phân trong cơ sở dữ liệu sql?
- 5. lưu trữ dữ liệu nhị phân trong mysql
- 6. Lưu trữ dữ liệu UTF-16/Unicode trong SQL Server
- 7. Có sự khác biệt lớn về kỹ thuật giữa các loại dữ liệu VARBINARY (MAX) và IMAGE không?
- 8. Giải pháp lưu trữ dữ liệu SQL Server
- 9. URI dữ liệu so với nhị phân trong cơ sở dữ liệu
- 10. Kiểu dữ liệu SQL Server để chỉ lưu trữ trường thời gian như 09:10 vv
- 11. Các định dạng lưu trữ nhị phân cho sqflt8, sqlmoney và các kiểu dữ liệu SQL gốc khác là gì?
- 12. Làm cách nào để lưu trữ băm trong cơ sở dữ liệu SQL Server bằng C#?
- 13. Giá trị rỗng trong một kiểu dữ liệu varbinary parameter
- 14. Loại dữ liệu thập lục phân của SQL Server
- 15. lưu trữ dữ liệu nhị phân trên cassandra giống như MYSQL BLOB nhị phân
- 16. Dữ liệu lưu trữ blob tham chiếu trong SQL azure
- 17. Chèn dữ liệu nhị phân vào SQL Server bằng cách sử dụng PHP
- 18. SQL Server varbinary (max) và varchar (max) dữ liệu trong một bảng riêng biệt
- 19. Nhị phân nhị phân cắt ngắn thành 8000 byte - SQL Server 2008/varbinary (tối đa)
- 20. Đăng dữ liệu nhị phân với curl
- 21. SQL 2008 - varchar (max) vs kiểu dữ liệu văn bản
- 22. Dữ liệu nhị phân trong MySQL
- 23. Perl & MongoDB dữ liệu nhị phân
- 24. Bạn có lưu trữ dữ liệu nhị phân trong cơ sở dữ liệu hoặc trong hệ thống tệp không?
- 25. Kiểu dữ liệu XML Trong truy vấn SQL Server 2008
- 26. Lưu trữ email Outlook trong cơ sở dữ liệu Microsoft SQL Server
- 27. Thiết kế bảng để lưu trữ dữ liệu XML trong SQL Server 2008 R2
- 28. dữ liệu Pixel Image
- 29. cURL Dữ liệu nhị phân và dữ liệu biểu mẫu
- 30. DbUnit và dữ liệu nhị phân
http://msdn.microsoft.com/en-us/library/ms187993.aspx là một liên kết tốt hơn. –
Tôi muốn biết thêm chi tiết về điều này. – cmsjr
@ cmsjr: có thể vì như Microsoft nói: "loại dữ liệu hình ảnh sẽ bị xóa trong phiên bản tương lai của Microsoft SQL Server." – Ehsan