USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Problemas com recordset
Everest
BARRA MANSA
RJ - BRASIL
ENUNCIADA !
Postada em 06/07/2006 15:55 hs            
Private Sub Command1_Click()
 
Set cmd = New ADODB.Command
Set cmd.ActiveConnection = DBConn
 
DBConn.CursorLocation = adUseClient
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "sp_geral"
 
Set par_idquery = cmd.CreateParameter("@IDQuery", adInteger, adParamInput)
 
par_idquery.Value = 1
 
cmd.Parameters.Append par_idquery
 
Set rstEmp = cmd.Execute
 
Debug.Print rstEmp.CursorType & " " & rstEmp.LockType
 
Text1.Text = rstEmp!codempresa
Text2.Text = rstEmp!razaosocial
 
End Sub
 
O problema é o seguinte, as minhas queryes estao dentro de uma procedure no banco sql server, entao eu passo o cmd.execute para um recordset para que eu possa manipular esse recordset, ou seja, dar moveprevious, movenext, moveMin, abrirsomenteleitura, bloquear registros para outros usuarios, etc, so que quando eu faço isso ele coloca como padrao o CursorType como adOpenKeyset e LockType como adLockReadOnly. Pergunta, Tem algum jeito de fazer com que esse recordset abra como CursorType como adOpenDynamic e LockType como adLockPessimistic??? Pois e quero poder navegar nos registros e configurar o LockType
 
Se eu nao puder usar isso esse negocio de procedure é um verdadeiro lixo e o ADO do VB mais ainda.
 
Por favor nao deem respostas evasivas responda somente se vc souber.
 
Se alguem puder ajudar...
 
T+
   
Alan22
Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 06/07/2006 20:40 hs            
Uma das maneira pode ser assim:
 
Private Sub Form_Load()

Set cmd = New ADODB.Command
Set cmd.ActiveConnection = DBConn
 
DBConn.CursorLocation = adUseClient
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "sp_geral"
 
Set par_idquery = cmd.CreateParameter("@IDQuery", adInteger, adParamInput)
 
par_idquery.Value = 1
 
cmd.Parameters.Append par_idquery
With rstEmp
    .CursorLocation = adUseClient
    .CursorType = adOpenForwardOnly
    .LockType = adLockOptimistic
End With
 
Set rstEmp = cmd.Execute
 
Debug.Print rstEmp.CursorType & " " & rstEmp.LockType
 
Text1.Text = rstEmp!codempresa
Text2.Text = rstEmp!razaosocial
 
End Sub
Private Sub Form_Load()
DBConn.CursorLocation = adUseClient
par_idquery.Value = 1
With rstEmp
    .CursorLocation = adUseClient
    .CursorType = adOpenForwardOnly
    .LockType = adLockOptimistic
End With
Set rstEmp = DBConn.Execute("sp_geral " & par_idquery)
Debug.Print rstEmp.CursorType & " " & rstEmp.LockType
 
Text1.Text = rstEmp!codempresa
Text2.Text = rstEmp!razaosocial
 
End Sub
 
Falow

Alan
 
 
   
Cardoso G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
ENUNCIADA !
Postada em 07/07/2006 08:01 hs            
everest, essa maneira que o alan te passou esta correta, foi a que te passei no topico anterior ontem, pelo menos pra aqui funciona perfeitamente, se nao estiver funcionando ai, pode ser que o problema seja outro, da alguma mensagem de erro, ou ele apenas nao muda o cursor?
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página