Is there a big technical difference between VARBINARY(MAX) and IMAGE data types?

Junior Mayhé picture Junior Mayhé · Nov 6, 2010 · Viewed 19.6k times · Source

I was reading on internet these statements about SQL Server data types:

  1. VARBINARY(MAX) - Binary strings with a variable length can store up to 2^31-1 bytes.

  2. IMAGE - Binary strings with a variable length up to 2^31-1 (2,147,483,647) bytes.

Is there a really big technical difference between VARBINARY(MAX) and IMAGE data types?

If there is a difference: do we have to customize how ADO.NET inserts and updates image data field in SQL Server?

Answer

gbn picture gbn · Nov 6, 2010

They store the same data: this is as far as it goes.

"image" is deprecated and has a limited set of features and operations that work with it. varbinary(max) can be operated on like shorter varbinary (ditto for text and varchar(max)).

Do not use image for any new project: just search here for the issues folk have with image and text datatypes because of the limited functionality.

Examples from SO: One, Two