SELECT COUNT PARA VARIAVEL [IMPORTANTE]
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
[Ô]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
Voce esta usando Ado via codigo ou controle vinculado?
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
mas nao ligo a bd por codigo
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
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
eu nao ligo por ado eu ligo por data (controlo vinculado se nao me engano)
eu nao sei mudar esse codigo para mim :s
é data control, huumm faz tempo que não uso mais, porém vou lhe ajudar seria assim:
boa sorte
Dim Cont As Integer
conta.RecordSource = [Ô]select count(*) as quant from conta where mesa =[Ô] & nrmesa
conta.Refresh
cont = conta.Recordset.Fields([Ô]quant[Ô])
boa sorte
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
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
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
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
retire esta linha
conta.Recordset.MoveNext
conta.Recordset.MoveNext
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
Tópico encerrado , respostas não são mais permitidas