Can SQL Server 2005 handle rows with more than 8060 bytes of data?
SQL Server’s 8060-byte row limit has been quite a thorn in the side of developers working with the DBMS. In SQL Server 7 and 2000, the only way to get around this limit was to either use large object types (TEXT/NTEXT/IMAGE) or to split up data into multiple tables—neither option very friendly. SQL Server 2005 introduces an important feature called row overflow, which greatly relaxes the 8060-byte restriction. In short: It is now possible to insert rows with more than 8060 bytes of data, as long as the columns that cause the row size to exceed 8060 bytes are of varying types. Should a row exceed 8060 bytes, the data for varying columns (typed as VARCHAR, NVARCHAR, or VARBINARY) will be automatically moved off-row into the large object area, rather than terminating the data modification. Note that table size is still limited by fixed-length types, as well as internal headers and row pointers. This means that you still cannot create a table with a row size of greater than 8060 bytes if t
Related Questions
- I want to use Merge Replication to synchronise data to my SQL Server CE database. Are there any how-to whitepapers available?
- How can we save various objects into the disk? How can we convert different types of data into bytes?
- Are there statistics to trace data changes (e.g. how many rows were inserted, updated, or deleted)?