Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Claudio Neto

[Resolvido] Erro ao usar MySQLCommand duas vezes

Recommended Posts

Estou usando uma conexão com banco MySQL, e minha rotina está assim:

 

Dim cn As MySqlConnection = abreConexao()
Dim myCommand As New MySqlCommand
Dim myReader As MySqlDataReader
Dim myExecute As MySqlDataReader
Dim SQL As String

SQL = "select * from TABELA"

myCommand.Connection = cn
myCommand.CommandText = SQL
myReader = myCommand.ExecuteReader()

...

SQL = "update TABELA set estado = '" & cliente(i).getEstado() & "', ultimatentativa = '" & cliente(i).getUltimaTentativa() & "', tentativasefetuadas = " & cliente(i).getTentativasEfetuadas() & ""
SQL = SQL & " where id = " & cliente(i).getId()

myCommand.CommandText = SQL
myExecute = myCommand.ExecuteReader()

Na primeira execucao esta funcionando, mas na segunda da o seguinte erro:

There is already an open DataReader associated with this Connection which must be closed first

Parece que preciso fechar o myCommand, mas nao encontrei como fazer. E outra coisa, como nao ha um retorno do meu update, preciso mesmo assim inserir no myExecute? Quando trabalhava com ADO dava para simplesmente executar.

 

Obrigado desde ja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hehe, ninguem nem chegou nem a ver o topico ainda mas jah achei.

 

O que eu precisava fechar nao era o myCommand, e sim o myReader que estava associado ao myCommand.

Fechando resolveu, e quando a nao precisar passar para uma variavel por nao haver retorno, preciso usar o ExecuteNonQuery ao inves do ExecuteReader.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.