Código de SQL - Scripts que permite contar los registros de todas las tablas

Scripts que permite contar los registros de todas las tablasgráfica de visualizaciones


SQL

estrellaestrellaestrellaestrellaestrella(7)
Publicado el 23 de Diciembre del 2009 por Eduardo A. Ramirez c.
17.719 visualizaciones desde el 23 de Diciembre del 2009. Una media de 49 por semana
Script que cuenta la cantidad de registros que tienen todas las tablas de mi base de datos.

Versión 1
estrellaestrellaestrellaestrellaestrella(7)

Publicado el 23 de Diciembre del 2009gráfica de visualizaciones de la versión: Versión 1
17.720 visualizaciones desde el 23 de Diciembre del 2009. Una media de 49 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
CREATE PROC proc_countrowstable
as
begin
set nocount On;
Declare @tbName nvarchar(100)
Declare CountRowsTable Cursor For SELECT Table_Name FROM INFORMATION_SCHEMA.TABLES WHERE  TABLE_TYPE='BASE TABLE' ORDER BY TABLE_SCHEMA, TABLE_NAME
Open CountRowsTable
fetch CountRowsTable
into @tbName
 while @@fetch_status=0
 begin
  begin try
    Declare @Query nvarchar(4000),@CursorQuery varchar(4000), @valResult varchar(8000),@SaltoLinea nvarchar(4000)
     set @Query='Select Table_name +'+ char(39) +' RowCout:  '+ char(39) +'+ cast((select count(*) from '+ @tbname +') as nvarchar(4000)) as valResult  from (
       SELECT Table_Name FROM INFORMATION_SCHEMA.TABLES 
       WHERE  TABLE_TYPE='+char(39)+'BASE TABLE'+ char(39)+') Tablas
       where  Table_name='+ char(39)+@tbname+char(39)
     set @CursorQuery='Declare CursorQuery CURSOR FOR '+@Query
     exec(@CursorQuery)
      --exec(@Query)
     Open CursorQuery
     fetch CursorQuery
    into @ValResult
    print @ValResult
    set @SaltoLinea=(SELECT REPLICATE('-',LEN(@ValResult)))
    print @SaltoLinea
     close CursorQuery
     deallocate CursorQuery
 
  End try
  begin catch
  SELECT ERROR_NUMBER() AS ErrorNumber,
  ERROR_MESSAGE() AS ErrorMessage;
  end catch
 fetch CountRowsTable
 into @tbName
 end
close CountRowsTable
Deallocate CountRowsTable
end



Comentarios sobre la versión: Versión 1 (7)

Diana
25 de Enero del 2010
estrellaestrellaestrellaestrellaestrella
Justo, justo lo que necesitaba me ahorraste una cantidad de tiempo...muchas gracias
Responder
Jaime Vergara
10 de Marzo del 2010
estrellaestrellaestrellaestrellaestrella
¡Espectacular!
muchas gracias
Responder
JORGE RAMIREZ
05 de Febrero del 2011
estrellaestrellaestrellaestrellaestrella
ME GUSTA TU CODIGO AMIGO
YO STOY ESTUDIANDO ING INFORMATICA EN PARAGUAY Y ME GUSTA EL DESARROLLO DE SISTEMA OHALA ME PUEDAS AYUDAR PARA MAS ADELANTE AMIGO
Responder
Idalia
18 de Marzo del 2011
estrellaestrellaestrellaestrellaestrella
oie no me funciona.. sale un error .. (S1914) Expecting: TRANSACTION

Oracle-SQL-PLSQL s1914... plis ... me urge!!

Saludos
Responder
Edward Ocando
03 de Agosto del 2012
estrellaestrellaestrellaestrellaestrella
No funciona cuando las tablas pertenecen a algún esquema distinto de dbo.

Por ejemplo tabla -> Comtabilidad.Libros
Responder
Edward Ocando
03 de Agosto del 2012
estrellaestrellaestrellaestrellaestrella
El correcto seria:

SELECT sysobjects.Name, sysindexes.Rows
FROM sysobjects
INNER JOIN sysindexes ON sysobjects.id = sysindexes.id
WHERE type = 'U' AND sysindexes.IndId < 2
ORDER BY sysobjects.Name
Responder
Luis Daniel
09 de Abril del 2015
estrellaestrellaestrellaestrellaestrella
como puedo responder a esta interogante Nombre de las películas que no han sido alquiladas.
Responder

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s1911