I have a very difficult problem with work!
In the system, we use a table that contains information about the current workflow process. One of the fields contains a table containing metadata about this process (don’t ask me why !! AND NO, I CAN’T CHANGE THIS !!)
The problem is that this table is stored in the IMAGE field in SQL Server 2005 (in a database installed with SQL 2000 compatibility).
This table currently has 22K + rows and even a simple query:
SELECT TOP 100 * FROM OFFENDING_TABLE
Gets 30 seconds to retrieve data in Query Analyzer.
I am thinking about updating compatibility with SQL 2005 (after I was informed that the application can handle it).
Secondly, I want to change the column data type to varbinary(max) , but I do not know if this will affect the application.
Another thing I am considering is to use sp_tableoption to set large value types out of row to 1 , as it is currently 0 , but I have no information if this improves performance.
Does anyone know how to improve performance in such a scenario?
Edited to clarify
My problem is that I do not control what the application requests from SQL Server, and I did some reflection on it (the application is a .NET 1.1 website) and it uses a field for some internal things, which I have no idea I have what it is.
I need to improve the overall performance of this table.
sql-server varbinary imagefield
Paulo santos
source share