ERRO AO CARREGAR IMAGEM NO SQLSERVER
Olá pessoal
Sequinte: quero fazer um loop para armazenar uma foto em cada registro
Só que o primeiro Loop funciona sem problema, no segundo Loop dá erro na linha em vermelho
Erro:
[txt-color=#e80000]The variable name [ô]@imgFoto[ô] has already
been declared. Variable names must be
unique within a query batch or stored procedure[/txt-color]
cx2.Conectar()
cdCarregaFoto.Connection = cx2.cSql
While drAlunosSelecao.Read()
If drAlunosSelecao([Ô]AluFoto[Ô]) <> [Ô](Sem Foto)[Ô] Then
CarregaFotoAluno = carregaImagem(RaizSistema + [Ô]\Fotos\[Ô] + drAlunosSelecao([Ô]AluFoto[Ô]))
sqlCarregaFoto = [Ô]Update [[Ô] + ArquivoTemp1 + [Ô]] [Ô] +
[Ô]Set FotoAluno = @ImgFoto [Ô] +
[Ô]Where AluCodigo = [ô][Ô] + drAlunosSelecao([Ô]AluCodigo[Ô]) + [Ô][ô][Ô]
cdCarregaFoto.CommandText = sqlCarregaFoto
Try
[txt-color=#e80000]cdCarregaFoto.Parameters.Add([Ô]@ImgFoto[Ô], SqlDbType.Image).Value = CarregaFotoAluno[/txt-color]
cdCarregaFoto.ExecuteNonQuery()
Catch ex As Exception
MsgBox(TextoErro(ex.Message, ex.StackTrace))
End Try
End If
End While
cx2.Desconectar()
cx1.Desconectar()
Nota-se que tem algo haver quando tento carregas a segunda foto na variável [ô]@ImgFoto[ô]. parece que não estou fechando alguma coisa.
O que pode ser?
PS. A instrução SQLEstá certa pois a primeira foto ele armazena,
Como eu faço para abrir o banco e fecha-lo não vem ao caso
Sequinte: quero fazer um loop para armazenar uma foto em cada registro
Só que o primeiro Loop funciona sem problema, no segundo Loop dá erro na linha em vermelho
Erro:
[txt-color=#e80000]The variable name [ô]@imgFoto[ô] has already
been declared. Variable names must be
unique within a query batch or stored procedure[/txt-color]
cx2.Conectar()
cdCarregaFoto.Connection = cx2.cSql
While drAlunosSelecao.Read()
If drAlunosSelecao([Ô]AluFoto[Ô]) <> [Ô](Sem Foto)[Ô] Then
CarregaFotoAluno = carregaImagem(RaizSistema + [Ô]\Fotos\[Ô] + drAlunosSelecao([Ô]AluFoto[Ô]))
sqlCarregaFoto = [Ô]Update [[Ô] + ArquivoTemp1 + [Ô]] [Ô] +
[Ô]Set FotoAluno = @ImgFoto [Ô] +
[Ô]Where AluCodigo = [ô][Ô] + drAlunosSelecao([Ô]AluCodigo[Ô]) + [Ô][ô][Ô]
cdCarregaFoto.CommandText = sqlCarregaFoto
Try
[txt-color=#e80000]cdCarregaFoto.Parameters.Add([Ô]@ImgFoto[Ô], SqlDbType.Image).Value = CarregaFotoAluno[/txt-color]
cdCarregaFoto.ExecuteNonQuery()
Catch ex As Exception
MsgBox(TextoErro(ex.Message, ex.StackTrace))
End Try
End If
End While
cx2.Desconectar()
cx1.Desconectar()
Nota-se que tem algo haver quando tento carregas a segunda foto na variável [ô]@ImgFoto[ô]. parece que não estou fechando alguma coisa.
O que pode ser?
PS. A instrução SQLEstá certa pois a primeira foto ele armazena,
Como eu faço para abrir o banco e fecha-lo não vem ao caso
Você não está limpando os Parameters. Tente assim:
cx2.Conectar()
cdCarregaFoto.Connection = cx2.cSql
While drAlunosSelecao.Read()
If drAlunosSelecao([Ô]AluFoto[Ô]) <> [Ô](Sem Foto)[Ô] Then
CarregaFotoAluno = carregaImagem(RaizSistema + [Ô]\Fotos\[Ô] + drAlunosSelecao([Ô]AluFoto[Ô]))
sqlCarregaFoto = [Ô]Update [[Ô] + ArquivoTemp1 + [Ô]] [Ô] +
[Ô]Set FotoAluno = @ImgFoto [Ô] +
[Ô]Where AluCodigo = [ô][Ô] + drAlunosSelecao([Ô]AluCodigo[Ô]) + [Ô][ô][Ô]
cdCarregaFoto.CommandText = sqlCarregaFoto
Try
[txt-color=#e80000]cdCarregaFoto.Parameters.Clear()[/txt-color]
cdCarregaFoto.Parameters.Add([Ô]@ImgFoto[Ô], SqlDbType.Image).Value = CarregaFotoAluno
cdCarregaFoto.ExecuteNonQuery()
Catch ex As Exception
MsgBox(TextoErro(ex.Message, ex.StackTrace))
End Try
End If
End While
cx2.Desconectar()
cx1.Desconectar()
Beleza JABA
Funcionou 100%
Muito Obrigado
Funcionou 100%
Muito Obrigado
Tópico encerrado , respostas não são mais permitidas