Visual Basic.NET - error cmd.executenonquery()

 
Vista:

error cmd.executenonquery()

Publicado por Orlando (3 intervenciones) el 13/06/2010 23:43:10
Te comento lo hici un programa de insertar un registro en la base de datos de access dentro de visual basic .net
te lo paso la siguiente codificacion


Imports System.Data
Imports System.Data.OleDb

Public Class Clientes

Private Sub Clientes_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim CadConexion As String

CadConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Visual Studio 2008\Projects\Practica\Remiseria1\Remiseria1\RemiseriaBD.mdb"

Using conn As New OleDbConnection(CadConexion)
conn.Open()
Dim consulta As String
consulta = "insert into Cliente (CodID, ApNombre, DNI, FechaNacimiento, Direccion, Localidad, Telefono, Celular, FechaInicio)values (@CodID, @ApNombre, @DNI, @FechaNacimiento, @Direccion, @Localidad, @Telefono, @Celular, @FechaInicio)"
Dim cmd As New OleDbCommand(consulta, conn)
cmd.Parameters.AddWithValue("@CodID", Me.TextCODID.Text.Trim)
cmd.Parameters.AddWithValue("@ApNombre", Me.TextApNombre.Text.Trim)
cmd.Parameters.AddWithValue("@DNI", Me.TextDNI.Text.Trim)
cmd.Parameters.AddWithValue("@FechaNacimiento", Me.TextFechNacimiento.Text.Trim)
cmd.Parameters.AddWithValue("@Direccion", Me.TextDireccion.Text.Trim)
cmd.Parameters.AddWithValue("@Localidad", Me.TextLocalidad.Text.Trim)
cmd.Parameters.AddWithValue("@Telefono", Me.TextTelefono.Text.Trim)
cmd.Parameters.AddWithValue("@Celular", Me.TextCelular.Text.Trim)
cmd.Parameters.AddWithValue("@FechaInicio", Me.TextFechaInicio.Text.Trim)
cmd.ExecuteNonQuery()
MsgBox("Dato esta creado con exito")
End Using
End Sub

Me sale un error con el cmd.executenonquery() "no se pudo encontrar la tabla de resultados Clientes" como procedemos?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:error cmd.executenonquery()

Publicado por Damian (824 intervenciones) el 18/06/2010 14:22:39
La tabla es "Cliente" o "Clientes"? porque en el error te dice "Clientes" y tu dentro del insert tienes "Cliente".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error cmd.executenonquery()

Publicado por Orlando (3 intervenciones) el 19/06/2010 04:40:45
La tabla correcta es "Cliente , luego si queres chatear por medio MSN con respecto a programador.

La ejecute cuando estaba compilado de los codigos, mientras me tira error diciendo : " No se controlo InvalidOperationException"
Con respecto ExecuteNonQuery requiere una conexion abierta y disponible. El estado actual de la conexion es Cerrada"

Necesitaria arreglar la codificacion lo mencionado.

Te dejo mi mail es [email protected] para charlar lo que corresponda.

Muchas Gracias,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error cmd.executenonquery()

Publicado por Damian (824 intervenciones) el 19/06/2010 14:10:08
Por el tema de la conexion, debes poner asi:

If MiConexion.State = ConnectionState.Open Then
MiConexion.Close()
Else
MiConexion.Open()
End If

Donde MiConexion es un SqlConnection
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error cmd.executenonquery()

Publicado por Orlando (3 intervenciones) el 19/06/2010 20:30:28
Listo ya funciono correctamente con tus codigos.. Ademas me conecto por medio de oledbconnection.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error cmd.executenonquery()

Publicado por Diana (1 intervención) el 22/08/2012 22:50:26
Hola!!!! a mi también me sale un errror en mi executenonquery(), espero me puedan ayudar, al igual estoy trabajando con una base de datos access y visual basic

Imports System.Data.OleDb
Imports System.IO
Imports System.Drawing

Public Class Form3
Dim N As Integer = 0
Dim CN As New OleDb.OleDbConnection("PROVIDER=MICROSOFT.ACE.OLEDB.12.0; DATA SOURCE= C:\Fovial_trasporte.accdb")
Sub MOSTRAR()
Dim DA As New OleDb.OleDbDataAdapter("SELECT * FROM Contro_comb_xvehiculo", CN)
Dim DS As New DataSet
DA.Fill(DS, "Contro_comb_xvehiculo")
DataGridView1.DataSource = DS.Tables("Contro_comb_xvehiculo")
End Sub
Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MOSTRAR()
CARGAR()
BLOQUEAR()
CARGAR_C()
End Sub
Sub CARGAR()
Dim DA As New OleDb.OleDbDataAdapter("SELECT * FROM Contro_comb_xvehiculo", CN)
Dim DS As New DataSet
DA.Fill(DS, "Contro_comb_xvehiculo")
ComboBox3.DataSource = DS.Tables("Contro_comb_xvehiculo")
ComboBox3.DisplayMember = "Codigo"

End Sub
Sub CARGAR_C()
ComboBox1.Items.Add("ISUZU")
ComboBox1.Items.Add("NISSAN")
ComboBox1.Items.Add("SANGYOUG")
ComboBox1.Items.Add("PRADO")
ComboBox1.Items.Add("SANYON")

ComboBox2.Items.Add("7221")
ComboBox2.Items.Add("9678")
ComboBox2.Items.Add("9525")
ComboBox2.Items.Add("7114")
ComboBox2.Items.Add("7223")
ComboBox2.Items.Add("7225")
ComboBox2.Items.Add("7224")
ComboBox2.Items.Add("7226")
ComboBox2.Items.Add("9677")
ComboBox2.Items.Add("7220")
ComboBox2.Items.Add("9679")
ComboBox2.Items.Add("7678")

End Sub
Sub LIMPIAR()
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
TextBox5.Clear()
TextBox6.Clear()

ComboBox1.Text = ""
ComboBox2.Text = ""
ComboBox3.Text = ""
DateTimePicker1.Text = ""


End Sub
Sub BLOQUEAR()
Button1.Enabled = True
Button2.Enabled = True
Button3.Enabled = False
Button4.Enabled = True
Button5.Enabled = True
Button6.Enabled = False
End Sub
Sub DESBLOQUEAR()
Button1.Enabled = False
Button2.Enabled = False
Button3.Enabled = True
Button4.Enabled = False
Button5.Enabled = False
Button6.Enabled = True
End Sub

Sub BUSCAR_COD()
Dim CMD As New OleDb.OleDbCommand("SELECT * FROM Contro_comb_xvehiculo WHERE Vehiculo ='" & ComboBox1.Text & "'", CN)
Dim DR As OleDb.OleDbDataReader

CN.Open()
DR = CMD.ExecuteReader

If DR.Read Then
ComboBox3.Text = DR(1)
ComboBox2.Text = DR(2)
DateTimePicker1.Text = DR(3)
TextBox1.Text = DR(4)
TextBox2.Text = DR(5)
TextBox3.Text = DR(6)
TextBox4.Text = DR(7)
TextBox5.Text = DR(8)
TextBox6.Text = DR(9)

Else
MsgBox("ERROR")
End If
CN.Close()
End Sub
Sub NUEVO()
Dim CMD As New OleDbCommand("INSERT INTO Contro_comb_xvehiculo VALUES ('" & ComboBox1.Text & "', '" & ComboBox3.Text & "','" & ComboBox2.Text & "', '" & DateTimePicker1.Text & "', '" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & TextBox3.Text & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "')", CN)
CN.Open()
CMD.ExecuteNonQuery()
CN.Close()
MOSTRAR()
MsgBox("Regristro Agregado")
End Sub
Sub MODIFICAR()
Dim CMD As New OleDbCommand("UPDATE Contro_comb_xvehiculo SET Vehiculo='" & ComboBox1.Text & "', Codigo='" & ComboBox3.Text & "', Placa='" & ComboBox2.Text & "', Fecha='" & DateTimePicker1.Text & "', Kilometraje='" & TextBox1.Text & "', No_de_Orden='" & TextBox2.Text & "', No_factura='" & TextBox3.Text & "', Galones='" & TextBox4.Text & "', Valor='" & TextBox5.Text & "', Sub_total='" & TextBox6.Text & "' WHERE Vehiculo='" & ComboBox1.Text & "'", CN)
CN.Open()
CMD.ExecuteNonQuery()
CN.Close()
MOSTRAR()
MsgBox("Registro Actualizado")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
BUSCAR_COD()
End Sub

Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click
Close()
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
DESBLOQUEAR()
LIMPIAR()
N = 1
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
DESBLOQUEAR()
N = 2
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
If N = 1 Then
NUEVO()
ElseIf N = 2 Then
MODIFICAR()
End If
BLOQUEAR()
LIMPIAR()
CARGAR()
N = 0
End Sub

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
BLOQUEAR()
LIMPIAR()
N = 0
End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Dim CMD As New OleDb.OleDbCommand("DELETE FROM Contro_comb_xvehiculo WHERE Vehiculo='" & ComboBox1.Text & "'", CN)
CN.Open()
CMD.ExecuteNonQuery()
CN.Close()
LIMPIAR()
CARGAR()
MOSTRAR()
MsgBox("El registro se a Eliminado")
End Sub
End Class

en realidad no me sale ningún error bueno no me lo detecta como error, sino que al momento de copilar no me guarda, ni modifica nada, me cada de la copilación y me sale un mensaje que "La operación debe usar una consulta actualizable". y me señala mi CMD.ExecuteNoQuery. Espero puedan ayudarme gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar