Foros del Web » Programación para mayores de 30 ;) » .NET »

Guardar datos en Access

Estas en el tema de Guardar datos en Access en el foro de .NET en Foros del Web. Saludos !!! Tengo un formulario que accede a una base de datos Access. Al consultar datos lo hace bien, pero cuando voy a guardar datos ...
  #1 (permalink)  
Antiguo 19/06/2009, 18:15
 
Fecha de Ingreso: mayo-2006
Mensajes: 26
Antigüedad: 17 años, 10 meses
Puntos: 0
Guardar datos en Access

Saludos !!! Tengo un formulario que accede a una base de datos Access. Al consultar datos lo hace bien, pero cuando voy a guardar datos en la base de datos, aparentemente lo hace bien, pero al revisar el archivo access no aparecen los datos guardados. El código que utilizo es el siguiente:

OleDbConnection con;
string sqlQuery;
OleDbCommand cmd;
OleDbDataAdapter adapter;

sqlQuery = "INSERT INTO tblContratoPrincipal ( NumeroProyecto, NumeroContrato, Objeto, NitContratante, valorProyecto, " +
"FechaInicio, FechaFin, AProyecto, MesProyecto, DiaProyecto, CuerpoContrato, Plazo) " +
"VALUES ('" + txtNroProyecto.Text + "', '" + txtNroContrato.Text + "', '" + txtObjetoContrato.Text + "', '" + lblNitContratante.Text +
" ', '" + txtValorContrato.Text + "', '" + dtpFechaInicio.Value.ToShortDateString() + "', '" + dtpFechaFin.Value.ToShortDateString() + "', '" + lblAProyecto.Text +
" ', '" + dtpFechaInicio.Value.Month + "', '" + dtpFechaInicio.Value.Day + "', '" + rtbeCuerpoContratoPpal.RichTextBox.Text + "', '" + txtPlazoContrato.Text + "')";
cmd = new OleDbCommand(sqlQuery);
cmd.Connection = con;

adapter.InsertCommand = cmd;

if (con.State == ConnectionState.Closed)
con.Open();

int i = cmd.ExecuteNonQuery();
  #2 (permalink)  
Antiguo 20/06/2009, 20:38
Avatar de jaullo  
Fecha de Ingreso: abril-2009
Mensajes: 994
Antigüedad: 15 años
Puntos: 30
Respuesta: Guardar datos en Access

Trata de hacerlo de la siguiente manera

'para abrir la conexion
Sub abrirConexion()
Try
strConexion = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ".\tubd.mdb"
cnnConex = New OleDb.OleDbConnection(strConexion)
cnnConex.Open()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try

End Sub

'para ejecutar la consulta de guardarr
Sub consultaAccion(ByVal consulta As String) 'para hacer las consultar

Try
comand = New OleDb.OleDbCommand(consulta, cnnConex)
comand.ExecuteNonQuery()

Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub

'para cerrar la conexion
Sub cerrarConexion()
Try
cnnConex.Close()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub

'con esta instruccion haces tu insert
Try
Dim objCon As New conexion 'conexion deberia cambiarse por el nombre de la clase en donde tienes los comandos de acceso a la bd (todos los que te puse anteriormente)
Dim strSQL As String = "INSERT INTO cliente (codcliente,nombre,pais,telefono)" & _
"VALUES (" & a.codigo & ",'" & a.nombre & "','" & a.pais & "','" & a.telefono & "')"
objCon.abrirConexion()
objCon.consultaAccion(strSQL)
objCon.cerrarConexion()
Catch ex As Exception
MsgBox("Error al guardar los datos", MsgBoxStyle.Critical)
End Try

saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:09.