Access - Error al realizar consulta sql sobre BD en Access

 
Vista:

Error al realizar consulta sql sobre BD en Access

Publicado por Waspeis (3 intervenciones) el 12/04/2005 18:40:43
La consulta que pretendo llevar a cabo es la siguiente:
"SELECT max(codord) from TaOrd"

Simplemente quiero obtener el codigo de ordenador mayor de la columna codord de la tabla TaOrd, y el error que me sale es este:
"No se pudieron habilitar las restricciones. Una o varias filas contienen valores que infringen las restricciones NON-NULL, UNIQUE o FOREIGN-KEY"

Tengo dos tablas: TaClientes con los campos codcli, nombre y apellidos y TaOrd con los campos codord y codcli. El campo codcli de la tabla TaOrd hace referencia al campo codcli de la tabla TaClientes.

Trabajo con Visual C# .Net y la base de datos está en Access

¿Sabe alguien cómo puedo solucionar este problema?
Muchas gracias
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
Imágen de perfil de Alejandro

Obtener el código de ordenador máximo de la tabla TaOrd

Publicado por Alejandro (4142 intervenciones) el 31/05/2023 00:34:40
El error que estás enfrentando indica que hay filas en la tabla TaOrd que violan las restricciones NON-NULL, UNIQUE o FOREIGN-KEY. Esto puede estar relacionado con la columna codcli en la tabla TaOrd, que hace referencia al campo codcli de la tabla TaClientes.

Aquí hay algunas posibles soluciones para solucionar este problema:

1. Verifica la integridad referencial: Asegúrate de que los valores en la columna codcli de la tabla TaOrd existan en la columna codcli de la tabla TaClientes. Verifica si hay registros en la tabla TaOrd con valores de codcli que no existen en la tabla TaClientes. Puedes hacerlo ejecutando la siguiente consulta en Access:

1
SELECT DISTINCT codcli FROM TaOrd WHERE codcli NOT IN (SELECT codcli FROM TaClientes)

Si obtienes resultados de esta consulta, significa que hay registros en TaOrd con valores de codcli que no existen en TaClientes. Deberás corregir estos registros para que se cumpla la integridad referencial.

2. Asegúrate de que las columnas codcli sean del mismo tipo de datos y tengan la misma longitud en ambas tablas.

3. Verifica las restricciones de las columnas codord y codcli en la tabla TaOrd. Asegúrate de que las restricciones NON-NULL, UNIQUE y FOREIGN-KEY estén configuradas correctamente y se cumplan en los registros existentes.

Una vez que hayas solucionado los problemas de integridad referencial y las restricciones, deberías poder ejecutar la consulta "SELECT MAX(codord) FROM TaOrd" sin obtener el error mencionado.

Recuerda siempre hacer una copia de seguridad de tu base de datos antes de realizar cambios importantes y ten cuidado al modificar datos en tablas relacionadas para evitar inconsistencias en los datos.
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