insertar una imagen en una base de datos
-
lunes, 12 de septiembre de 2011 16:42
ok estoy trabajando en una aplicación en vs 2010 con VB.net con una base de datos en access 2003 tengo una duda como defino los parametros para agregar un archivo del tipo "objeto ole"
el codigo que tengo es este
Imports System.Data.OleDb Public Class ClassEquipos Public Sub insertarEquipo(ByVal CodigoNewEquipo As String, ByVal NomNewEquipo As String, ByVal EspecificacionesNewEquipo As String, _ ByVal IdNewTipoEquipo As String, ByVal NewPrecio As String, ByVal NewCuotaBasica As String, ByVal NewCuotaPlanDatos As String, _ ByVal NewCaracteristica As String, ByVal ima As Object) Using cn Dim query As String = "INSERT INTO DescripcionEquipo (id_equipo, nombre_equipo, " & _ "especificaciones,id_tipo_cel, precio, cuota_basica, " & _ "cuota_basica_plan_datos,imagen,)" & "VALUES" & _ ("@CodigoNewEquipo, @NomNewEquipo, " & _ "@NewCaracteristica,@IdentidadTipo, @NewPrecio, " & _ "@NewCuotaBasica, @NewCuotaPlanDatos,@Ima)") Dim cmd = New OleDb.OleDbCommand(query, cn) cmd.Parameters.AddWithValue("@CodigoNewEquipo", CodigoNewEquipo) cmd.Parameters.AddWithValue("@NomNewEquipo", NomNewEquipo) cmd.Parameters.AddWithValue("@NewCaracteristica", NewCaracteristica) cmd.Parameters.AddWithValue("@IdentidadTipo", IdNewTipoEquipo) cmd.Parameters.AddWithValue("@NewPrecio", NewPrecio) cmd.Parameters.AddWithValue("@NewCuotaBasica", NewCuotaBasica) cmd.Parameters.AddWithValue("@NewCuotaPlanDatos", NewCuotaPlanDatos) cmd.Parameters.AddWithValue("@Ima", ima) cmd.ExecuteNonQuery() End Using End Sub End Class
el problema se presenta cuando hago el llamado a la clase y me dice que no se han establecido los parámetros para "ima"
gracias de antemano!!!!
Todas las respuestas
-
lunes, 12 de septiembre de 2011 16:46Moderador
hola
no ahs probado pasando el array de byte de la imagen ?
como se menciona aqui
http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/da28852f-7195-4310-b249-b89a333016a2/
OleDbParameter myParameter = new OleDbParameter("@Image", OleDbType.LongVarBinary, imagedata.Length); myParameter.Value = imagedata; myCommand.Parameters.Add(myParameter);
puedes usar elFile.ReadAllBytes()
para tomar el array de byte del archivo de imagen
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Marcado como respuesta Eduardo PorteschellerMicrosoft Community Contributor, Moderator miércoles, 14 de septiembre de 2011 17:38
-
lunes, 12 de septiembre de 2011 20:32
ok pero como defino el parametro
OleDbParameter myParameter = new OleDbParameter("@Image", OleDbType.LongVarBinary, imagedata.Length)
dentro de una clase??
ejemplo:
Public Sub insertar(ByVal CodigoNewEmpleado As String, ByVal NomNewEmpleado As String, ByVal ApellidoNewEmpleado As String, _ ByVal Identidad As String, ByVal NewEmail As String, ByVal NewTelefonoPlan As String, ByVal NewTelefonoContacto As String)
ya que en oreo formulario solo iran llamados a clases

