Que Excepcion usar?

jnoname
28 de Julio del 2004
Con que excepcion se pueden capturar una violacion de clave primaria de una base de datos,es decir si tengo una tabla con clave primaria DNI y intento meter otro cliente con DNI =, o se controla mediante codigo?

Elph
28 de Julio del 2004
con un SqlException( o OleDbException), con ella detectaras cualquier grado de excepcion de sql.

Mikel
28 de Julio del 2004
La respuesta de Elph es correcta. De todas formas, te explico el "truquillo" que suelo utilizar yo.

Cuando no se que excepcion utilizar un un caso concreto, provoco la excepcion sin controlar el error, es decir, en tu caso provocaria intentar introducir un registro duplicado y miraria que excepcion me produce.

Espero haberme explicado. Saludos desde Euskal Herria.

Mikel

antuan
28 de Julio del 2004
acuerdate que la SqlException tiene una coleccion "Errors" que en numerosos casos te puede ayudar mucho con los errores que nos llegan desde nuyestro fiel servidor

DarkRigel
28 de Julio del 2004
Yo creo que es mejor que no fuerces la excepcion, si no que antes compruebes si ya esta ese DNI en la base de datos mediante código.