Unique key

Hola experto.
Sabes que diferencia hay entre unique key y primary key de Oracle. La unique key es primary key a la vez? Si uso unique puedo usar primary al mismo tiempo? Son excluyentes ? Si uso las dos hay problemas para la tabla?
Marisol

1 Respuesta

Respuesta
-1
Ambos funcionan de la misma forma y puedes utilizarlo a tu antojo, la diferencia entre ellos, es que el primary key forma automáticamente un index para hacer más efectivos los querys, también esta te sirve para hacer los foreing key en otras tablas, el unique solo te sirve para garantizar que ese campo no se duplicara pero no más.
En una tabla puedes tener muchos campos unique, pero solo puedes tener un primary key
Me quedan ciertas dudas de la respuesta: ¿Uno podría entonces simular en la tabla varias primary key utilizando unique? ¿Si uno crea una primary key y luego un unique sobre los mismos campos de la primary el utiliza este último index o de todas formas el primary key crea uno nuevo index? ¿El index que crea automáticamente el porque es de tipo unique?
Marisol
Ahh.. y me falto una última:
¿Si uno crea un primary key y luego el automáticamente crea un index al borrar el primary el borra el index creado? ¿Si uno crea un unique index sobre los campos del porque y después borra la primary key también elimina el unique key creado?
Marisol
Bueno algo me confundes con tu juego de palabras, pero te diré, el porque es una llave única por cada tabla es decir a cada tabla solo puedes asignarle un porque(aunque esta puede estar formada por uno o más campos, pero en dado caso todos los campos involucrados conformaran una porque compuesta) esta porque crea automáticamente un archivo index el cual hace los querys más rápidos cuando los haces utilizando esta porque.
Los campos unique son totalmente independientes del porque puedes tener tantos como quieras en tu tabla, estos no tienes ninguna relación ni con el porque ni con el index, estos campos son solo una restricción que le indican a la tabla que no puede tener dos tuplas iguales, funciona casi con el null el cual le indica a la tabla que no puede tener valores nulos, son nada más restricciones y nada más, nada que ver con el porque. Pero si ya tienes un campo porque no necesitas ponerlo unique porque automáticamente lo es.
Y si si borras el porque automáticamente desaparece el index están relacionados.
Faltaron por contestar pregunta., En una combinación de campos que sea unique, uno de estos campos puede ser nulo, siempre y cuando la combinación sea única.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas