SELECT COUNT PARA VARIAVEL [IMPORTANTE]

SYSZEN 22/05/2012 09:05:52
#402421
alguem sabe como fazer esta consulta em sql e passar o valor qe vai dar para uma variavel ?

[Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa

conta - tabela
nrmesa - variavel do vb

eu preciso de passar o valor desse count para uma variavel so qe nao consigo

cont = [Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa

conta.RecordSource ([Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa)
cont = conta.Fields([Ô]quant[Ô])

ja tentei isso mas nao consigo , alguem ?

eu neste momento tenho assim mas ja nao da erro ta sempre e a retornar 0
conta.RecordSource = [Ô]select count(*) into quant from conta where id =[Ô] & procurar
TECLA 22/05/2012 09:51:11
#402429
Voce esta usando Ado via codigo ou controle vinculado?
SYSZEN 22/05/2012 10:06:45
#402438
controle vinculado é o qe ? eu tou a utilizar um data record para ligar a base dados nao sei se responde ao que perguntou
mas nao ligo a bd por codigo
EDILSONLEAL 22/05/2012 10:21:56
#402440
Dim oRs As Recordset
Dim sSQL As String
Dim iCont As Integer

sSQL = [Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa
Call oRs.Open(sSQL, conexao, adOpenKeyset, adLockOptimistic, adCmdText)

If Not oRs Is Nothing Then
If oRs.RecordCount > 0 Then
iCont = oRs!quant
End If
End If
SYSZEN 22/05/2012 10:33:47
#402441
eu nao ligo por ado eu ligo por data (controlo vinculado se nao me engano)
SYSZEN 22/05/2012 10:35:53
#402443
eu nao sei mudar esse codigo para mim :s
MARCELO.TREZE 22/05/2012 11:34:58
#402452
é data control, huumm faz tempo que não uso mais, porém vou lhe ajudar seria assim:

Dim Cont As Integer
conta.RecordSource = [Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa
conta.Refresh
cont = conta.Recordset.Fields([Ô]quant[Ô])


boa sorte

SYSZEN 22/05/2012 11:40:51
#402455
ele faz o primeiro mas depois nao passa para o segundo
o codigo todo que tenho é este

Dim texto As String, adicionar As String, quant As Integer, Cont As Integer
conta.Recordset.MoveFirst
Do
texto = Text1.Text
procurar = conta.Recordset![id]
encontrar = InStr(texto, procurar)
If encontrar = 0 Then
adicionar = conta.Recordset![id]
Text1.Text = Text1.Text + adicionar + [Ô],[Ô]
conta.RecordSource = [Ô]select count(*) as quant from conta where id =[Ô] & procurar
conta.Refresh
Cont = conta.Recordset.Fields([Ô]quant[Ô])
adicionar = Cont
Text2.Text = Text2.Text + adicionar + [Ô],[Ô] ([txt-color=#e80000]ele aqui ta a escrever nas textbox que é so para testar a ver se funciona[/txt-color])
End If
conta.Recordset.MoveNext
Loop Until conta.Recordset.EOF
conta.RecordSource = [Ô]select * from conta[Ô] ([txt-color=#e80000]foi para mostrar novamente todos os registos na dbgrid[/txt-color])
conta.refresh

nao sei que esteja mal

SYSZEN 22/05/2012 11:47:59
#402459
mas ja faz 1 ja e melhor que nada
se precisares que te comente o codigo para perceberes diz
aqui tens uma print como podes ver as textbox sao para teste para ver se funciona
mas ja começa a funcionar

eu pelo que tive a ver o problema está aqui

[txt-color=#e80000](parte final)[/txt-color]
conta.Recordset.MoveNext
Loop Until conta.Recordset.EOF
conta.RecordSource = [Ô]select * from conta[Ô]
conta.Refresh

pq eles depois fica restrito ao select até que saia do [Ô]DO[Ô]
mas caso eu meta isto


conta.RecordSource = [Ô]select * from conta[Ô]
conta.Refresh
antes o vb breka
MARCELO.TREZE 22/05/2012 11:51:33
#402460
retire esta linha

conta.Recordset.MoveNext


SYSZEN 22/05/2012 11:56:41
#402463
Citação:

:
retire esta linha

conta.Recordset.MoveNext




caso tire da-me o erro

3265 : item not fount in this collection

e mesmo assim se tirar nao move para o registo seguinte :s
e caso deixe estar ele como fica restrito ao select
se meter
conta.RecordSource = [Ô]select * from conta[Ô]
conta.Refresh
antes ele breka , e se ficar restrito ao select so vai fazer o 1 registo
Página 1 de 3 [27 registro(s)]
Tópico encerrado , respostas não são mais permitidas