Número de registros de todas tabelas de um banco de dados (SQL Azure)

Olá pessoas,

Quem tentou executar a query presente no meu artigo Número de registros de todas tabelas de um banco de dados, pode ter percebido que a sys.partitions simplesmente não existe (ou é inacessível) no SQL Azure.

Então, com algumas alterações na query anterior, podemos obter o mesmo resultado até mesmo no SQL Azure.

SELECT
  s.[name]
, t.[name]
, [rows] = SUM(p.[row_count])
FROM sys.schemas s
INNER JOIN sys.tables t
  ON t.[schema_id] = s.[schema_id]
INNER JOIN sys.indexes i
  ON i.[object_id] = t.[object_id]
  AND i.[type] IN (0,1)
INNER JOIN sys.dm_db_partition_stats p
  ON p.[object_id] = t.[object_id]
  AND p.[index_id] = i.[index_id]
GROUP BY
  s.[name]
, t.[name]
ORDER BY
  s.[name]
, t.[name]

Agradecimentos ao Emílio Silva, por me apresentar este desafio.

Microsoft SQL Azure e Microsoft Azure Database

A Microsoft alterou o nome do SQL Services e SQL Data Services, agora são chamados de Microsoft SQL Azure e Microsoft SQL Azure Database respectivamente. A alteração dos nomes não significa mudança no produto, mas sim a integração dos componentes a plataforma de serviços.

Como parte da plataforma do Windows Azure, o SQL Azure Database será disponível como um banco de dados relacional na núvem, suportanto T-SQL sobre o protocolo TDS.

Será disponível nas edições: Web Edition Database e Business Edition Database.

Web Edition – espaço para 2GB, por $9.99 mês.
Business Edition – espaço para 10GB, por $99.99 mês.
Clientes podem optar por banda por $.10 e $.15 por GB.

A CTP estará disponível em Agosto, a release final sai em ainda na segunda metade de 2009.

Nas futuras release, haverá a possibilidade de utilizar queries “cruzando” partições, e auto-particões.

Em fim, T-SQL chegou nas nuvens!!!

Fontes: Pinal Dave e Microsoft Azure