Boa Tarde,
De fato não há nada pronto, mas um pouco além do script é a metodologia de cálculo. O tamanho pura e simplemente da coluna é relativamente fácil de se calcular. Se for um tipo fixo você já sabe o tamanho (INT é 4bytes, DATE é 3bytes, CHAR(n) é n bytes, etc).
Se for um tipo variável, você pode tirar uma média AVG(LENGTH(Coluna)) ou AVG(DATALENGTH(Coluna)) e somar os bytes de controle.
A questão é o rateio da área comum à linha e não específica da coluna. Sabemos que cada linha ocupa bytes adicionais para total de colunas, controle de nulabilidade, início e término da linha, tamanho, etc. O tamanho da coluna deve incluir esse espaço em
uma forma de rateio ou não ? Se o espaço adicional é 5 bytes por linha, como faremos a divisão desse espaço para as colunas ? Esse lógica deve ser contemplada antes mesmo de montarmos alguma coisa.
[ ]s,
Gustavo Maia Aguiar
Blog:
http://gustavomaiaaguiar.wordpress.com
Vídeos:http://www.youtube.com/user/gmasql
Classifique as respostas. O seu feedback é imprescindível