none
La conversión de la cadena "Insert into producto(nombre,stoc" en el tipo 'Double' no es válida. RRS feed

  • Pregunta

  • La conversión de la cadena "Insert into producto(nombre,stoc" en el tipo 'Double' no es válida.

    no se porque me da este error

    Public Sub insertar(ByVal nombre As String, ByVal stock As Integer, ByVal descripcion As String, ByVal precio As Integer, ByVal categorias As Integer, ByVal ruta As String)
            'query = "Insert into producto(nombre,stock,descripcion,precio,Id_categori,imagen) values('" + nombre.ToString() + "'," + stock + ",'" + descripcion + "'," + precio + "," + categorias + ",'" + ruta + "')"
            ''AgregarParametro("@nombre", nombre)
            ''AgregarParametro("@stock", stock)
            ''AgregarParametro("@descripcion", descripcion)
            ''AgregarParametro("@precio", precio)
            ''AgregarParametro("@categorias", categorias)
            ''AgregarParametro("@ruta", ruta)
            'EjecutarComando(query)
            EjecutarComando("Insert into producto(nombre, stock, descripcion, precio, Id_categori, imagen) values('" + nombre.ToString() + "'," + stock + ",'" + descripcion + "'," + precio + "," + categorias + ",'" + ruta + "')")
         End Sub


    Saludos Luis Ángel

    sábado, 11 de agosto de 2012 2:03

Respuestas

  • ehhh pero que ese codigo? o se se queda a la mitad de querer usar parametro y concatenarlos en un string, la verdad descartalo completamente porque esta muy mal

    usa parametros pero de verdad, ese metodo EjecutarComando() eliminalo ya, porque solo entorpece el codigo

    usa algo como esto

    Dim connstring As String = "connection string"
    Using cn As New SqlConnection(connstring)
    	cn.Open()
    	
        Dim sql As String = "INSERT INTO NombreTabla (@campo1, @campo2) VALUES (@param1, @param2)"
        Dim cmd As New SqlCommand(query, cn)
        cmd.Parameters.AddwithValue("@param1", Textbox1.Text)
        cmd.Parameters.AddwithValue("@param2", DateTimePicker1.Value)
    	
        cmd.ExecuteNonQuery()
    
    End Using 
    en donde asignes los parametros y nunca concatenes un string para armar la query, porque ese es el error que tienes

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta LuisAngel1991 domingo, 12 de agosto de 2012 5:01
    sábado, 11 de agosto de 2012 13:23

Todas las respuestas

  • ehhh pero que ese codigo? o se se queda a la mitad de querer usar parametro y concatenarlos en un string, la verdad descartalo completamente porque esta muy mal

    usa parametros pero de verdad, ese metodo EjecutarComando() eliminalo ya, porque solo entorpece el codigo

    usa algo como esto

    Dim connstring As String = "connection string"
    Using cn As New SqlConnection(connstring)
    	cn.Open()
    	
        Dim sql As String = "INSERT INTO NombreTabla (@campo1, @campo2) VALUES (@param1, @param2)"
        Dim cmd As New SqlCommand(query, cn)
        cmd.Parameters.AddwithValue("@param1", Textbox1.Text)
        cmd.Parameters.AddwithValue("@param2", DateTimePicker1.Value)
    	
        cmd.ExecuteNonQuery()
    
    End Using 
    en donde asignes los parametros y nunca concatenes un string para armar la query, porque ese es el error que tienes

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta LuisAngel1991 domingo, 12 de agosto de 2012 5:01
    sábado, 11 de agosto de 2012 13:23
  • cambie le codigo cm tu dijiste y no me funca me da un error ya no se que hacer 

    Public Sub insertar(ByVal numero_cedula As Integer, ByVal nombre As String, ByVal apellido As String, ByVal direccion As String, ByVal seccion As Integer, ByVal tipobeca As Integer, ByVal Cuenta As Integer, ByVal imagen As String)
    
            
            Dim connstring As String = "Data Source=LUISANGEL-PC\SQLEXPRESS;Initial catalog=QuickPassEstudiantil;integrated security=true"
            Using cn As New SqlConnection(connstring)
                cn.Open()
    
                Dim sql As String = "Insert into estudiante values(@numerocedula, @nombre, @apellido, @direccion, @seccion, @tipobeca, @cuenta, @imagen)"
                Dim cmd As New SqlCommand(query, cn)
                cmd.Parameters.AddWithValue("@numerocedula", numero_cedula)
                cmd.Parameters.AddWithValue("@nombre", nombre)
                cmd.Parameters.AddWithValue("@apellido", apellido)
                cmd.Parameters.AddWithValue("@direccion", direccion)
                cmd.Parameters.AddWithValue("@seccion", seccion)
                cmd.Parameters.AddWithValue("@tipobeca", tipobeca)
                cmd.Parameters.AddWithValue("@cuenta", Cuenta)
                cmd.Parameters.AddWithValue("@imagen", imagen)
                'cmd.Parameters.AddwithValue("@param1", Textbox1.Text)
                'cmd.Parameters.AddwithValue("@param2", DateTimePicker1.Value)
    
                cmd.ExecuteNonQuery()
    
            End Using
    
        End Sub

    y da este error 

    ExecuteNonQuery: no se ha inicializado la propiedad CommandText


    Saludos Luis Ángel

    domingo, 27 de enero de 2013 17:39
  • q debo cambiar en este codigo para hacer un retur de un dataset?¿ 

    Puru vida se les agradece Saludos Luis Ángel

    jueves, 7 de febrero de 2013 17:35