Visual Basic - Control de Errores en el DBMS(sql server)

Life is soft - evento anual de software empresarial
 
Vista:

Control de Errores en el DBMS(sql server)

Publicado por ramon (6 intervenciones) el 30/05/2005 19:25:54
Ante todo gracias por adelantado.

El problema es el siguiente:

Con el manejador de errores de Visual Basic me es imposible capturar un error de duplicacion de clave primaria, el error es:

Error "-2147217873 ":
Infracción de la restriccion PRIMARY KEY "tb_tarifa. No se puede insertar una clave duplicada en el objeto tb_tarifa

Yo creo que es porque se produce en el DBMS(En SQL server) y por tanto NO es posible capturarlo en VBasic.

Agradeceria cualquier sugerencia porque me es imposible capturar el error.

Gracias

El codigo es el siguiente:

'CONTROL de ERRORES en la introduccion de datos en la BASE DE DATOS
On Error GoTo Err_IntroduccionDatosBD:

Set objConnection = New ADODB.Connection
objConnection.Open "Provider=SQLOLEDB.1;INTEGRATED SECURITY=SSPI;User ID=Administrador;password=" & passwordBD & ";Initial Catalog=bdaliproser;Data Source=" & baseDatos
Set objRecordset = New ADODB.Recordset

objRecordset.Open "SELECT * FROM tb_tarifa", objConnection, adOpenDynamic, adLockBatchOptimistic
objRecordset.AddNew

objRecordset.Fields.Item("num_cliente").Value = txtNum_Cliente.Text
objRecordset.Fields.Item("cod_nucleo").Value = codNucleo

objRecordset.UpdateBatch 'ERROR cuando calve primaria duplicada
''''''''''''''''''''''''''''''''' No va al manejador de errores

Err_IntroduccionDatosBD:
If (Err.Number = -2147217873) Then
MsgBox ("Hola")
End If

objRecordset.Close
objConnection.Close




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:Control de Errores en el DBMS(sql server)

Publicado por Lande (7 intervenciones) el 01/06/2005 09:29:21
Hla amigo/a. para controlar los errores que provoca SQL como este debes hacerlo tal que asi.

Deberas importar

Imports System.Data.SqlClient

try

Instrucciones

Catch ex As ConstraintException

ESTE CONTROLA LA REPETICION DE CLAVES

Catch ex As SqlException

ESTE CONTROLA ERRORES DE CONEXION PRINCIPALMENTE

End Try
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

Sigo teniendo problemas

Publicado por ramon (6 intervenciones) el 01/06/2005 11:03:04
Gracias por adelantado.

He probado el código que me has pasado.
Lo he metido en el código de Visual Basic pero tengo el siguiente problema:

Las instrucciones que me pasaste no las reconoce Visual Basic
aparecen en rojo.

¿Sabes porque puede ser?
¿Es que hay que ponerlas fuera de Visual Basic?
¿Hay que añadir alguna libreria o algo?

Un saludo
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:Sigo teniendo problemas

Publicado por Anonimo (100 intervenciones) el 01/06/2005 12:20:41
Pasa que esas instrucciones son para VB.NET
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

Alguna solucion para Vbasic 6.0

Publicado por raquel (40 intervenciones) el 01/06/2005 18:22:45


necesitaria una alternativa para Vbasic 6.0

Un saludo
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:Sigo teniendo problemas

Publicado por ramon (6 intervenciones) el 01/06/2005 18:27:20

¿Alguna alternativa a esas intrucciones puesto que la programacion la realizo en VBasic 6?
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