Geekzone: technology news, blogs, forums
Welcome Guest.
You haven't logged in yet. If you don't have an account you can register now.

476 posts

Ultimate Geek
+1 received by user: 85

Topic # 136237 20-Nov-2013 08:40 Send private message


Have a client whose SQL Server 2008 (Express) DB is very close to the 10GB hard limit.  Upgrading to Full SQL Server is not an option.

I have told them we need to remove some data, and that it is likely that the photos that are stored with each contact are the issue. However they refuse to remove data unless I can prove that will resolve the issue (and even then I am not sure if they will do it)

I have confirmed with SSMS that the table containing the photos is 9.8GB but as it also holds all the other relevant contact data I can't prove it is the photos.

This is a commercial program so I can't alter any of the DB tables etc.

Is there an SQL command I can use to show the total size (MB,GB) of all the data stored in a column in a table so I can prove it is the photos?


Create new topic

This is a filtered page: currently showing replies marked as answers. Click here to see full discussion.

2439 posts

Uber Geek
+1 received by user: 898


  Reply # 937697 20-Nov-2013 08:46 Send private message

select sum(datalength(column)) from table

Windows 7 x64 // i5-3570K // 16GB DDR3-1600 // GTX660Ti 2GB // Samsung 830 120GB SSD // OCZ Agility4 120GB SSD // Samsung U28D590D @ 3840x2160 & Asus PB278Q @ 2560x1440
Samsung Galaxy S5 SM-G900I w/Spark

1182 posts

Uber Geek
+1 received by user: 105

  Reply # 937803 20-Nov-2013 11:32 Send private message

Its not really a simple answer.

SQL Server stores data in 8K data pages, there are 8 pages to an extent (64kb) and 16 extents to a megabyte. A row in a page cannot be bigger than the page. There are three types of allocation unit, IN_ROW_DATA (normal stuff), LOB_DATA (your images, text etc,) and your ROW_OVERFLOW_DATA (varchar, varbinary etc.). If the data in a column in a data row (IN_ROW_DATA) contains more than 8K it will be moved to the ROW_OVERFLOW_DATA allocation unit. LOB data such as your images is ok.

To get the size of the database on disk SELECT used_page_count /128.0 FROM sys.dm_db_partition_stats will give you the size in megabytes.

To determine the allocation units and sizes used in each,

SELECT, alloc.type_desc, alloc.total_pages, alloc.used_pages, alloc.data_pages
FROM sys.allocation_units as alloc
JOIN sys.partitions as part on alloc.containter_id = part.partition_id
JOIN sys.objects as obj ON part.object_id = obj.object_id
WHERE = 'mytable'

This will give you the number of pages used in the LOB_DATA allocation unit which you can use to calculate the size on disk. It will also allow you to see the size of any large data fields you have that are moved to the ROW_OVERFLOW_DATA allocation unit.

Hope that provides some useful information regarding the issue.

Software Engineer


Create new topic

Twitter »

Follow us to receive Twitter updates when new discussions are posted in our forums:

Follow us to receive Twitter updates when news items and blogs are posted in our frontpage:

Follow us to receive Twitter updates when tech item prices are listed in our price comparison site:

News »

National AI group launching next month
Posted 25-May-2017 09:54

New Zealand Digital Future, according to tech companies
Posted 25-May-2017 09:51

New Microsoft Surface Pro delivers outstanding battery life, performance
Posted 25-May-2017 09:34

Garmin VIRB 360 brings immersive 360-degree 5.7K camera experience
Posted 25-May-2017 09:30

Telecommunications monitoring report: Are you being served?
Posted 24-May-2017 11:54

NetValue partners with CRM Provider SugarCRM
Posted 23-May-2017 20:04

Terabyte looms as Vocus users download 430GB a month
Posted 19-May-2017 14:51

2degrees tips into profit after seven lean years
Posted 19-May-2017 09:47

2degrees growth story continues
Posted 17-May-2017 15:25

Symantec Blocks 22 Million Attempted WannaCry Ransomware Attacks Globally
Posted 17-May-2017 12:41

HPE Unveils Computer Built for the Era of Big Data
Posted 17-May-2017 12:39

Samsung Galaxy S8 Plus review: Beautiful, feature-packed
Posted 16-May-2017 20:14

After ten years of mail pain Spark is done with Yahoo
Posted 15-May-2017 13:12

Warnings from security firms: do not click that link or risk your computer being infected
Posted 15-May-2017 10:11

Pushpay named NZ Hi-Tech Company of the Year 2017
Posted 15-May-2017 09:59

Geekzone Live »

Try automatic live updates from Geekzone directly in your browser, without refreshing the page, with Geekzone Live now.

Are you subscribed to our RSS feed? You can download the latest headlines and summaries from our stories directly to your computer or smartphone by using a feed reader.

Alternatively, you can receive a daily email with Geekzone updates.