Jump to content
Fivewin Brasil

EXIBIR NA TELA A TOTAL DE REGISTROS NO MYSQL


mkyx

Recommended Posts

BOA TARDE, pessoal

Qual comando pode ser usado para contar (count(*)) quanto registro tem dentro de um DB no mysql e exibí-lo na tela?

Exemplo:

como ficaria os comando no mysql para saber a quantidade de registro e atribuir na variável de memória QT_REG?

@ 10,10 say os_qtreg prompt str(qt_reg)+" registros"

 

Uso o SQLRDD.

Obrigado a todos, pela compreensão.

Att.

Pompeo

Guaratinguetá - SP

 

Fwh 8.02 SQLRDD xHarbour Compiler

Link to comment
Share on other sites

sqlrdd

  cSelect := "select count(*) as nReg from clientes"
  DbUseArea(.t.,"SQLRDD", cSelect, "TempClie")
  ? "total clientes: "+str(TempClie->nReg)
  TempClie->(dbCloseArea())

ou

  SR_GetConnection():exec("SET @n = 0;")
  cSelect := "SELECT @n := @n+1 AS nRegCorrente, CodCliente, NomeCliente FROM clientes"
  DbUseArea(.t.,"SQLRDD", cSelect, "TempClie")
  browse()
  TempClie->(DbGoBottom())
  ? TempClie->nRegCorrente
  TempClie->(dbCloseArea())

 

Link to comment
Share on other sites

 

Pelo que entendi ele quer saber o numero de registros do banco de dados e não de uma unica tabela, se for isto desconheço, até dei uma procurada no google para ver se achava algo, mais sem sucesso.

 

 

saber o numero de registro de um db, serio... isso existe?  poderia ser o numero de tabelas de um db  USE SEU_DB_AQUI; ......  select count(SHOW TABLES)

existe sim olhai...... (fonte:  https://stackoverflow.com/questions/286039/get-record-counts-for-all-tables-in-mysql-database)

exibir todos os registro de todas as tabelas de 1 db:

SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = "SEU DB AQUI";

SELECT TABLE_NAME,SUM(TABLE_ROWS)  FROM INFORMATION_SCHEMA.TABLES  WHERE TABLE_SCHEMA = 'SEU DB AQUI' GROUP BY TABLE_NAME;

exibir todos os registro de todas as tabelas de todos os dbs:

SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES;

SELECT TABLE_NAME,SUM(TABLE_ROWS)  FROM INFORMATION_SCHEMA.TABLES  GROUP BY TABLE_NAME;

vai exibir outras tabelas que talvez vc não queira:

 

dai faz assim:  ( aqui vc vai ver todos os campos para vc poder filtrar o que lhe vai servir)

SELECT  * FROM INFORMATION_SCHEMA.TABLES GROUP BY TABLE_NAME;    

provavelmente vc chegara a isto:

SELECT  TABLE_TYPE, TABLE_SCHEMA, TABLE_NAME, TABLE_ROWS, SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES where TABLE_TYPE = "BASE TABLE" and TABLE_SCHEMA != "mysql" and SUBSTRING(TABLE_NAME,1,3) != "SR_" GROUP BY TABLE_NAME;
     dai vc podera usar o SUM para pegar tudo em um unico numero
SELECT SUM(TABLE_ROWS) as TOT_TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES where TABLE_TYPE = "BASE TABLE" and TABLE_SCHEMA != "mysql" and SUBSTRING(TABLE_NAME,1,3) != "SR_";

 

Link to comment
Share on other sites

Aproveitando, alguém sabe como é comando para FIREBIRD idêntico aos:

SELECT SUM(TABLE_ROWS) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = "SEU DB AQUI";

SELECT TABLE_NAME,SUM(TABLE_ROWS)  FROM INFORMATION_SCHEMA.TABLES  WHERE TABLE_SCHEMA = 'SEU DB AQUI' GROUP BY TABLE_NAME;

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...