Storage:
MSDN ArticleEXTENT made up of 8 8k pages. (64k)
main adv is to save time when adding new records as new storage isnt sought for every single row - its already been assigned as an extent.
PAGE
Number of pages in an extent is fixed at 8.
a row can NOT be split between pages - which gives rows a max limit. - unless using a variable length col and the data is then stored "off page", on another page. This means rows can be over 8k if they use variable length types.
There are a number of different kinds of page:
Data
Index
BLOB
etc...
ROW
Number of rows per page is variable as:
can be up to 8k
max 1024 cols
DATALENGTH(colname) - gives the number of bytes the data in resultset cell takes up. If varchar for example it only gives used bytes but does NOT include the 2 or so bytes taken to store the length of the data stored.
E.g.
SELECT DATALENGTH(colA)
A clustered index and a table cannot be on different filegroups
Estimation article: http://msdn.microsoft.com/en-us/library/aa933068(SQL.80).aspx