Ir para conteúdo

Arquivado

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

TrymBeast

Escrever imagem em SQL Server [VB.NET]

Recommended Posts

Olá!

Tenho esta dúvida, e não consigo encontrar nenhuma solução para ela, mesmo depois de ter passado várias horas a vasculhar na Net, e de todas as soluções encontradas dão sempre erro. A maior parte das vezes aparece em ASP.NET, mas quero fazer isto numa aplicação windows.

 

Pelo que eu percebi, a lógica para guardar será a de guardar os bytes da imagem num array de bytes, mas, depois não consigo inserir esse array na base de dados, experimentei com os campos de tipo image e binary e nenhum deu.

A maneira que me parece ser a melhor é usando um parameter na base de dados, mas dá-me sempre um erro a dizer que a variável @Photo não foi declarada.

o código deverá estar algo assim, pois não o tenho comigo agora.

a variável byt é o tal array de bytes

BD.cmd.CommandText = "INSERT INTO AssetItemRegister (AssetPic) VALUES (@Photo)"BD.cmd.parameter.add("@Photo", byt)
não incluí as partes de abrir conexão, fechar conexão, e de executar o sql,

mas diz-me sempre que a variável @Photo não foi declarada, alguém me consegue explicar porquê? Já tentei de outras maneiras e nunca funcionou, a maioria das vezes dando mais erros diferentes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

falai TrymBeast,

 

tem este artigo aqui

http://www.linhadecodigo.com.br/artigos.asp?id_ac=337

 

testei ele aqui e funfou legalzinho, ta em webforms mais para passar pra winforms creio q deva ser tranquilo, se precisar de uma ajuda para isso, mandai que o pessoal do fórum aqui segura a bronca

 

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

já vi montes de códigos asp.net e c#, mas ñ consegui que nenhum funciona-se

aqui vai o código que estou a tentar, mas dá-me erro que diz "Invalid precision value" e é erro do sql server

 

 

Dim cn As New Odbc.OdbcConnection(TeamSoftDataAccess.Con.ConnectionString)Dim cmd As New Odbc.OdbcCommand("INSERT INTO AssetItemRegister (AssetPic) VALUES (@Picture)", cn)Dim strImageFilePath As String = xDim fsImageFile As New FileStream(strImageFilePath, FileMode.Open, FileAccess.Read)Dim bytImageData(fsImageFile.Length() - 1) As BytefsImageFile.Read(bytImageData, 0, bytImageData.Length)fsImageFile.Close()cmd.Parameters.Add("Picture", Odbc.OdbcType.Binary, bytImageData.Length).Value = bytImageDatacn.Open()cmd.ExecuteNonQuery()cn.Close()

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.