SQL 002
Olha eu aqui de novo (ou novamente); gente, não estou querendo chupar o sangue de ninguém,
acontece que em ado eu conto fácil, mas como disse estou precisando aprender SQL e usar menos
ado.
Seguinte:
Digamos que eu tenha uma variavel Long tipo:
Dim lngRegistros as Long
Pois bem, sei (acho que sei) que o select pra contar registros da minha tabela ficaria assim:
sSql = [Ô]Select Count(*) From Apostas[Ô]
Conn. Execute sSql
Acredito que isso deve retornar a quantidade de registros da tabela.
Agora pergunto:
é possÃvel ter o resultado desse Count(*) na variavel lngRegistros pra que eu possa
fazer comparações se a tabela está vazia ou contem registros gravados?
Tipo:
If lngRegistros = 0 then
. . .
elseif lngRegistos > 0 then
. . .
endif
é possÃvel?
. . .
Tente assim:
Dim rs As New ADODB.Recordset
sSql = [Ô]Select Count(*) From Apostas[Ô]
rs.Open sSql, con
lngRegistros = rs.Fields(0)
If lngRegistros = 0 then
[txt-color=#007100] [ô]Rotina para igual a zero[/txt-color]
Else
[txt-color=#007100] [ô]Rotina maior que zero[/txt-color]
End If
rs.Close
Set rs = Nothing
Sim, é possÃvel. Pórem você não poderá usar o objeto Connection, deverá ser usado o Recordset
Dim lngRegistros as Long
Sub ContarRegistros()
Dim r As ADODB.Recordset
lngRegistros = 0
Set r = New ADODB.Recordset
sSql = [Ô]Select Count(*) AS Total From Apostas[Ô]
r.Open sSql, Conn, 3
If not r.BOF Then lngRegistros = r([Ô]Total[Ô])
r.Close
Set r = Nothing
End Sub
ContarRegistros
If lngRegistros = 0 then
. . .
Elseif lngRegistos > 0 then
. . .
End If
Vlw . . .
Estou aprendendo.
Mesmo tendo a sql Select Count(*), ainda assim, preciso abrir um recordset, tanto na dica do Tecla quanto na dica do FFCouto.
Não vai mudar muito o código que já tenho, mesmo assim
Obrigado e fico devendo mais uma, e mais uma, e até a próxima
Blz . . .
Tópico encerrado , respostas não são mais permitidas