¿Qué significa repetición de restricción única?
1. Se pueden crear restricciones no nulas durante o después de crear la tabla. Como se muestra a continuación. 2. Consulte la restricción no nula recién establecida en el diccionario de datos. 3. Se utilizan restricciones únicas para garantizar que no haya valores duplicados en un campo o combinación de campos. 4. Se puede crear la misma restricción única al crear la tabla o después de crearla. 5. Finalmente, consulte las restricciones únicas en el diccionario de datos. Al insertar datos, los campos restringidos únicos no se pueden repetir. Puede estar vacío, pero sólo puede aparecer una vez. Por ejemplo, si el número de estudiante de un estudiante tiene una restricción única, no pueden aparecer dos estudiantes con el mismo número de estudiante. Si hay más de dos datos de estudiantes con el mismo número de estudiante al insertar datos, ocurrirá el problema que mencionaste. La clave principal de una tabla de base de datos tiene una restricción única, por lo que no se puede repetir. ¿Restricción anti-única? Creo que la clave principal está duplicada.
Hay dos soluciones: una es eliminar los datos duplicados y la otra es modificar las restricciones.
En el caso del comando de importación de Oracle, puede establecer parámetros para importarlo ignorando importaciones erróneas o sobrescribiendo los datos originales incondicionalmente.
Borrar datos anteriores antes de importar. 1. El sitio web oficial de Oracle ofrece sugerencias:
Si la restricción está habilitada, verificará si los datos recién insertados o actualizados satisfacen las condiciones de la restricción.
Si la restricción está configurada para deshabilitar, la tabla puede contener registros que violen la restricción.
Datos extendidos
Si se establece una restricción para validar, los datos existentes en la tabla deben cumplir con la restricción.
Si la restricción se establece en novalidación, no es necesario que los datos existentes en la tabla se ajusten a la restricción.
El comportamiento de validar y novalidar depende de si está activado/desactivado. Por lo tanto, al crear restricciones, puede elegir una combinación de métodos para lograr sus objetivos.
2. Dado que ya existen datos duplicados en la tabla y es necesario agregar una restricción única:
A. Si crea una restricción única directamente, aún obtendrá un error. porque la base de datos La restricción crea un índice único, por lo que obtendrá un error;
alterar tabla nombre_tabla agregar restricción nombre_restricción único(colu num) habilitar novalidar;
En esto. En este punto, primero debe crear un índice general y luego crear una restricción única sobre esta base:
Crear índice idx _ nombre en el nombre de la tabla (nombre de columna)
alterar tabla tabla _ nombre agregar restricción restricción _ nombre único(colu num) habilitar novalidate;
De manera similar, también puede crear una clave primaria única de acuerdo con este método.
Crear índice idx_name en el nombre de la tabla (nombre de columna)
alterar el nombre de la tabla de la tabla agregar restricción pk_tablename clave principal (columna1, columna2,...) habilitar novalidar