ORACLE

USUARIO.EXCLUIDOS 27/08/2007 10:14:15
#232795
Pessoal...

algum de vocÃÅ s trabalha com ORacle e VB?

Quando eu faço um update ou insert por exemplo... como eu dou commit ?
Considerando que estou fazendo o procedimento de update assim

TSQL = "update tb_prevfaturamentomidia " & _
"set janeiro ='" & T_Texto1.Value & "', " & _
"favereiro = '" & T_Texto2.Value & "', " & _
"marco = '" & T_Texto3.Value & "', " & _
"abril = '" & T_Texto4.Value & "', " & _
"maio = '" & T_Texto5.Value & "', " & _
"junho = '" & T_Texto6.Value & "', " & _
"julho= '" & T_Texto7.Value & "', " & _
"agosto = '" & T_Texto8.Value & "', " & _
"setembro= '" & T_Texto9.Value & "', " & _
"outubro= '" & T_Texto10.Value & "', " & _
"novembro ='" & T_Texto11.Value & "', " & _
"dezembro ='" & T_Texto12.Value & "' " & _
"where cdagencia ='" & T_Texto13.Value & "' and " & _
"cdcliente = '" & T_Texto14.Value & "' and " & _
"cdproduto ='" & T_Texto15.Value & "' and " & _
"ano = '" & C_Combo1.Value & "'"

SILVERDRAGON 27/08/2007 10:26:45
#232798
USUARIO.EXCLUIDOS 27/08/2007 10:28:23
#232799
Amigo, o próprio ADO se responsabiliza de executar o Commit.

Sua conexão deve ter o método Commit, BeginTrans, RollBack e tudo mais...
USUARIO.EXCLUIDOS 27/08/2007 10:49:43
#232805
SILVERDRAGON

Ai ele esta falando de uma procedure... ai sim joia to ligado que funciona...


MARCELOHF

Então nem preciso me preocupar com isso? Ele executa sozinho... então blz!


TAMANINI 27/08/2007 15:08:03
#232884
Não é que ele executa sozinho, você tem que chamar os métodos. Assim como você deve utilizar o recordset do ADO para fazer um comando DML(SELECT, INSERT, UPDATE e DELETE), você coloca o método .beginTrans antes de um INSERT por exemplo, e no fim, se tudo der certo, um .CommitTrans e caso haja algum erro, você coloca o .RollBackTrans no tratamento de erros da Sub.
Ok?
MADMAX 27/08/2007 16:00:41
#232928
Resposta escolhida
Comentario da TAMANINI esta correto....oia um exemplo
on error go to ROLLBACK
cn.begintrans
TSQL = "update tb_prevfaturamentomidia " & _
"set janeiro ='" & T_Texto1.Value & "', " & _
"favereiro = '" & T_Texto2.Value & "', " & _
"marco = '" & T_Texto3.Value & "', " & _
"abril = '" & T_Texto4.Value & "', " & _
"maio = '" & T_Texto5.Value & "', " & _
"junho = '" & T_Texto6.Value & "', " & _
"julho= '" & T_Texto7.Value & "', " & _
"agosto = '" & T_Texto8.Value & "', " & _
"setembro= '" & T_Texto9.Value & "', " & _
"outubro= '" & T_Texto10.Value & "', " & _
"novembro ='" & T_Texto11.Value & "', " & _
"dezembro ='" & T_Texto12.Value & "' " & _
"where cdagencia ='" & T_Texto13.Value & "' and " & _
"cdcliente = '" & T_Texto14.Value & "' and " & _
"cdproduto ='" & T_Texto15.Value & "' and " & _
"ano = '" & C_Combo1.Value & "'"
cn.execute (TSQL)
cn.CommitTrans
exit sub
ROLLBACK:
cn.RollbackTrans
USUARIO.EXCLUIDOS 27/08/2007 16:26:45
#232941
é que eu ainda não conheço a base toda que o cara desenvolveu, então ainda não estou trabalhando com PL/SQL.. mas minha intenção é trabalhar com Procedures poseriormente, fazer todo o tratamento de error por lá mesmo!

Eu não sei o que faria sem vocês...!
Hihihihi...
Tanqueu


Tópico encerrado , respostas não são mais permitidas