me peta al ejecutar dos inserts seguidos
Hola, a ver si me podeis ayudar... tengo un formulario donde en el boton aceptar tengo que hacer dos inserts. Para ello tengo creada una funcion Ejecutar(SEtenciaSQL,CadenaConexion) que cuando acaba cierra la base de datos y inicializa la conexion a nothing.
Si ejecuto los inserts por separado funcionan bien pero cuando quiero insertar dos registros y llamo a la funcion dos veces seguidas peta.
Alguien tiene alguna idea?
Gracias
Si ejecuto los inserts por separado funcionan bien pero cuando quiero insertar dos registros y llamo a la funcion dos veces seguidas peta.
Alguien tiene alguna idea?
Gracias
驴Es posible que no sean capaces de explicar bien el problema o duda que tienen?
Sin ver el c贸digo es dif铆cil ayudarte. Ni siquiera nos explicas cu脿l es el error que te da.
De todos modos, el error puede estar en cerrar la conexi貌n despu猫s de ejecutar el primer insert.
Saludos
Sin ver el c贸digo es dif铆cil ayudarte. Ni siquiera nos explicas cu脿l es el error que te da.
De todos modos, el error puede estar en cerrar la conexi貌n despu猫s de ejecutar el primer insert.
Saludos
Perdon por no haber puesto el c贸digo pero se hace los que se puede ;-)
El c贸digo es el siguiente:
'Funcion de conexion
Public Function Conectar(ByVal Conexion As String) As OleDbConnection
Dim db As New OleDbConnection(Conexion)
db.Open()
Return db
End Function
'PARA EJECUTAR UNA SENTENCIA SQL
Public Function Ejecutar(ByVal SentenciaSQL As String, ByVal CadenaConexion As String)
Dim db As OleDbConnection
Dim cm As New OleDbCommand
db = Conectar(CadenaConexion)
cm.Connection = db
cm.CommandText = SentenciaSQL
cm.CommandType = CommandType.Text
cm.CommandTimeout = 0
cm.ExecuteNonQuery()
cm.Connection.Close()
cm = Nothing
db.Close()
db = Nothing
End Function
Gracias
El c贸digo es el siguiente:
'Funcion de conexion
Public Function Conectar(ByVal Conexion As String) As OleDbConnection
Dim db As New OleDbConnection(Conexion)
db.Open()
Return db
End Function
'PARA EJECUTAR UNA SENTENCIA SQL
Public Function Ejecutar(ByVal SentenciaSQL As String, ByVal CadenaConexion As String)
Dim db As OleDbConnection
Dim cm As New OleDbCommand
db = Conectar(CadenaConexion)
cm.Connection = db
cm.CommandText = SentenciaSQL
cm.CommandType = CommandType.Text
cm.CommandTimeout = 0
cm.ExecuteNonQuery()
cm.Connection.Close()
cm = Nothing
db.Close()
db = Nothing
End Function
Gracias
TE REFIERES A ESTO SOLO ABRE Y CIERRA LA CONEXION
Public Function conex()
ADOCONN.ConnectionString = " Provider=SQLOLEDB.1;Persist Security Info=False;User ID=SA;Initial Catalog=SISVA;Data Source=HIGHLIFE"
ADOCONN.Open
End Function
Public Function desconectar()
ADOCONN.Close
End Function
conex
RST_EFICE.Source = "insert into tb_EFI_D values(" & FRM_CAPTURA.Txt_CvlEmpleado.Text & "," & FRM_CAPTURA.txt_fbma.Text & "," & FRM_CAPTURA.txt_fcma.Text & "," & 2 & ")"
RST_EFICE.ActiveConnection = ADOCONN
RST_EFICE.Open
desconectar
conex
RST_EFICE.Source = "insert into tb_EFI_D values(" & FRM_CAPTURA.Txt_CvlEmpleado.Text & "," & FRM_CAPTURA.txt_fbmi.Text & "," & FRM_CAPTURA.txt_fcmi.Text & "," & 3 & ")"
RST_EFICE.ActiveConnection = ADOCONN
RST_EFICE.Open
desconectar
Public Function conex()
ADOCONN.ConnectionString = " Provider=SQLOLEDB.1;Persist Security Info=False;User ID=SA;Initial Catalog=SISVA;Data Source=HIGHLIFE"
ADOCONN.Open
End Function
Public Function desconectar()
ADOCONN.Close
End Function
conex
RST_EFICE.Source = "insert into tb_EFI_D values(" & FRM_CAPTURA.Txt_CvlEmpleado.Text & "," & FRM_CAPTURA.txt_fbma.Text & "," & FRM_CAPTURA.txt_fcma.Text & "," & 2 & ")"
RST_EFICE.ActiveConnection = ADOCONN
RST_EFICE.Open
desconectar
conex
RST_EFICE.Source = "insert into tb_EFI_D values(" & FRM_CAPTURA.Txt_CvlEmpleado.Text & "," & FRM_CAPTURA.txt_fbmi.Text & "," & FRM_CAPTURA.txt_fcmi.Text & "," & 3 & ")"
RST_EFICE.ActiveConnection = ADOCONN
RST_EFICE.Open
desconectar