** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y Otros sistemas
  Mensajes nuevos Mensajes nuevos RSS - Gestionar errores de SQL server en Access
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Gestionar errores de SQL server en Access

 Responder Responder
Autor
Mensaje
Cristobal.A Ver desplegable
Habitual
Habitual
Avatar

Unido: 15/Julio/2010
Localización: Chile
Estado: Sin conexión
Puntos: 123
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Cristobal.A Cita  ResponderRespuesta Enlace directo a este mensaje Tema: Gestionar errores de SQL server en Access
    Enviado: 11/Julio/2017 a las 20:06
Estimados

tengan un buen día, tengo mi aplicación con una base de datos SQL Server. el tema es que necesito capturar los errores que envía sql para mostrar un mensaje de error más "desente" al usuario. uno de los ejemplos más típicos es por ejemplo cuando se duplican las llaves primarias de la tabla.
Traté de capturar el error pero siempre me da el código 0 (cero)
Arriba
deneg_nhj Ver desplegable
Habitual
Habitual
Avatar

Unido: 03/Septiembre/2012
Localización: Mexico
Estado: Sin conexión
Puntos: 100
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita deneg_nhj Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 12/Julio/2017 a las 19:55


Estimado Cristobal

1. Como haces la actualización de lo datos? 
 -- Mediante tablas vinculadas 
 -- Mediante ADO?
 -- Mediante consultas de paso? 


2. Como gestionas los errores, puedes mostrarlo?


Saludos!
deneg_nhj

Especializado en Microsoft Access, SQL SERVER y Excel
Arriba
Cristobal.A Ver desplegable
Habitual
Habitual
Avatar

Unido: 15/Julio/2010
Localización: Chile
Estado: Sin conexión
Puntos: 123
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita Cristobal.A Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 13/Julio/2017 a las 15:30
Estimado deneg_nhj, las tablas las tengo vinculadas con un odbc
Arriba
deneg_nhj Ver desplegable
Habitual
Habitual
Avatar

Unido: 03/Septiembre/2012
Localización: Mexico
Estado: Sin conexión
Puntos: 100
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita deneg_nhj Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 15/Julio/2017 a las 04:38

Cristobal, a falta de más información te comento:

Me imagino que vinculas las tablas y luego esas tablas las vinculas a un formulario como si fuera una tabla de Access.

Siendo así no es posible obtener más información de los errores de SQL SERVER.

Hay varios caminos que puedes seguir para que puedas "asegurar" la información que envías a SQL.

1. Validar los campos en el evento Before Update del Form.
2. Validar los valores duplicados en SQL utilizando una consulta que te obtenga el valor que estás indicando en el momento de la edición

3. Ejecutar la actualización/Inserción de los datos mediante sentencias Currendb.Execute , Aquí si podrás obtener más información de los errores de SQL SERVER
La sintaxis que debes de utilizar es Currendb.Execute "Orden SQL 'Update/Insert'... ", dbFailOnError

Nota: La opción dbFailOnError es importante para que muestra la secuencia de errores y claro tener en tus rutinas un control de errores.

4. Y por ultimo, hacer las actualizaciones y modificaciones mediante PROCEDIMIENTOS ALMACENADOS aquí si tendrás el control absoluto de lo que hace SQL SERVER y sus mensajes. El único detalle es que ahora hay que sabe procedimientos almacenados "CON CONTROL DE ERRORES" y como llamarlos desde Access.

Saludos!
deneg_nhj






Especializado en Microsoft Access, SQL SERVER y Excel
Arriba
guarracuco Ver desplegable
Moderador
Moderador
Avatar

Unido: 24/Abril/2004
Localización: EEUU
Estado: Sin conexión
Puntos: 2871
Opciones de entrada Opciones de entrada   Gracias (0) Gracias(0)   Cita guarracuco Cita  ResponderRespuesta Enlace directo a este mensaje Enviado: 30/Septiembre/2017 a las 14:19
Otra manera es creando una conexion con ADO o DAO.
Las operaciones contra la base de datos se haria por medio de esa conexion. de esa manera puedes capturar los errores.
https://tucondominioaldia.net
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable