none
Excepción no controlada del tipo 'System.Data.SqlClient.SqlException' en System.Data.dll RRS feed

  • Pregunta

  • Hola, Necesito ayuda!

    Este es mi código, Espero que alguien me pueda ayudar!

    Me maraca error en comando.ExecuteNonQuery()

    Imports System.Data
    Imports System.Data.SqlClient

    Public Class conexion
        Private conexion As String = ("Data Source=(localdb)\Projects;Initial Catalog=PAPELERIA;Integrated Security=True")
        Public cn As SqlConnection
        Private cmb As SqlCommandBuilder

        Private Sub conectar()
            cn = New SqlConnection(conexion)
        End Sub
        Public Sub New()
            conectar()
        End Sub

        Private comando As SqlCommand
        'INSERTAR
        Public Function insertar(sql As String) As Boolean
            cn.Open()
            comando = New SqlCommand(sql, cn)
            Dim i As Integer = comando.ExecuteNonQuery()
            cn.Close()
            If i > 0 Then
                Return True
            Else
                Return False
            End If
        End Function

        'ELIMINAR
        Public Function eliminar(tabla As String, condicion As String) As Boolean
            cn.Open()
            Dim sql As String = "delete from" & tabla & "where" & condicion
            comando = New SqlCommand(sql, cn)
            Dim i As Integer = comando.ExecuteNonQuery()
            cn.Close()
            If i > 0 Then
                Return True
            Else
                Return False
            End If
        End Function
        'actualizar
        Public Function actualizar(tabla As String, campos As String, condicion As String) As Boolean
            cn.Open()
            Dim sql As String = "update" & tabla & "set" & campos & "where" & condicion
            comando = New SqlCommand(sql, cn)
            Dim i As Integer = comando.ExecuteNonQuery()
            cn.Close()
            If i > 0 Then
                Return True
            Else
                Return False
            End If
        End Function
        'consultar 
        Public ds As New DataSet()
        Public da As SqlDataAdapter
        Public Sub consultar(sql As String, tabla As String)
            ds.Clear()
            da = New SqlDataAdapter(sql, cn)
            cmb = New SqlCommandBuilder(da)
            da.Fill(ds, tabla)
        End Sub

        Public Function consultar2(tabla As String) As DataTable
            Dim sql As String = "select * from" & tabla
            da = New SqlDataAdapter(sql, cn)
            Dim dts As New DataSet()
            da.Fill(dts, tabla)
            Dim dt As New DataTable()
            dt = dts.Tables(tabla)
            Return dt
        End Function
    End Class

    jueves, 22 de noviembre de 2018 19:46

Respuestas

  • hola abigail

    El metodo ExecuteNonQuery devuelve el número de fila (s) afectadas por cualquier comando INSERT, una UPDATE o un DELETE. 
    Este método se utilizará para realizar declaraciones DML y no con SELECT, puede que en metodo que este utilizando nonquery hallas metido un select
    • Editado greg_dorian jueves, 22 de noviembre de 2018 21:48
    • Marcado como respuesta Pablo Rubio miércoles, 28 de noviembre de 2018 18:05
    jueves, 22 de noviembre de 2018 21:47

Todas las respuestas

  • hola abigail

    El metodo ExecuteNonQuery devuelve el número de fila (s) afectadas por cualquier comando INSERT, una UPDATE o un DELETE. 
    Este método se utilizará para realizar declaraciones DML y no con SELECT, puede que en metodo que este utilizando nonquery hallas metido un select
    • Editado greg_dorian jueves, 22 de noviembre de 2018 21:48
    • Marcado como respuesta Pablo Rubio miércoles, 28 de noviembre de 2018 18:05
    jueves, 22 de noviembre de 2018 21:47
  • Cual de estos métodos provoca la excepcion? 

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Propuesto como respuesta Pablo Rubio lunes, 26 de noviembre de 2018 20:22
    jueves, 22 de noviembre de 2018 22:26