Clave primaria

Clave primaria

En el diseño de bases de datos relacionales, se llama clave primaria a un campo o a una combinación de campos que identifica de forma única a cada fila de una tabla. Una clave primaria comprende de esta manera una columna o conjunto de columnas. No pueden haber dos filas en una tabla que tengan la misma clave primaria.

Una clave primaria debe identificar unívocamente a todas las posibles filas de una tabla y no solo a las filas que se encuentran en un momento determinado. Ejemplos de claves primarias son DNI (asociado a una persona) o ISBN (asociado a un libro). Las guias telefónicas y diccionarios no pueden usar nombres o palabras o números del sistema decimal de Dewey como claves candidatas, porque no identifican unívocamente números de teléfono o palabras.

Una clave primaria es un caso especial de clave única. La mayor diferencia es que para claves únicas, no se impone automáticamente la restricción implícita NOT NULL, mientras que para claves primarias, sí. Así, los valores en columnas de clave única pueden o no ser NULL. Otra diferencia es que las claves primarias deben definirse por medio de otra sintaxis.

El modelo relacional, según se lo expresa mediante cálculo relacional y álgebra relacional, no distingue entre clave primaria y otros tipos de claves. Las claves primarias fueron agregadas al estándar SQL principalmente para conveniencia del programador.

Tanto claves únicas como claves primarias pueden referenciarse con claves foráneas.

Definiendo claves primarias

Las claves primarias están definidas el estándar ANSI SQL, mediante la directiva PRIMARY KEY. La sintaxis para aplicar tal directiva a una tabla existente está definida en SQL:2003 de esta manera:fotogenicamente


  ALTER TABLE <identificador_de_la_tabla>
      ADD [ CONSTRAINT <identificador_de_la_directiva> ] 
      PRIMARY KEY ( <nombre_de_columna> {, <nombre_de_columna>}... )

La clave primaria puede especificarse directamente en el momento de la creación de la tabla también. En el estándar SQL, las claves primarias pueden estar compuestas por una o más columnas. Cada columna que forme parte de la clave primaria queda implícitamente definida como NOT NULL. Nótese que algunos sistemas de bases de datos requieren que se marque explícitamente a las columnas de clave primaria como NOT NULL.

  CREATE TABLE nombre_de_la_tabla (
     id_col  INT,
     col2    CHARACTER VARYING(20),
     ...
     CONSTRAINT clapri_tabla PRIMARY KEY(id_col),
     ...
  )

En el caso en que la clave primaria sea una sola columna, ésta puede marcarse como tal por medio de la siguiente sintaxis:

  CREATE TABLE nombre_de_la_tabla (
     id_col  INT  PRIMARY KEY,
     col2    CHARACTER VARYING(20),
     ...
  )

Definiendo claves únicas

La definición de claves únicas es sintácticamente muy similar a la de clave primaria.

  ALTER TABLE <identificador_de_la_tabla>
      ADD [ CONSTRAINT <identificador_de_la_directiva> ] 
      UNIQUE ( <nombre_de_columna> {, <nombre_de_columna>}... )

De la misma manera, las claves únicas pueden definirse como parte de la sentencia de SQL CREATE TABLE.

  CREATE TABLE nombre_de_la_tabla (
     id_col   INT,
     col2     CHARACTER VARYING(20),
     cla_col  SMALLINT,
     ...
     CONSTRAINT clave_única UNIQUE(cla_col),
     ...
  )
  CREATE TABLE nombre_de_la_tabla (
     id_col  INT  PRIMARY KEY,
     col2    CHARACTER VARYING(20),
     ...
     cla_col  SMALLINT UNIQUE,
     ...
  )

Enlaces


Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Clave foranea — Saltar a navegación, búsqueda En el contexto de bases de datos relacionales, una clave foránea (o Foreign Key FK) es una limitación referencial entre dos tablas. La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija …   Wikipedia Español

  • Clave foránea — En el contexto de bases de datos relacionales, una clave foránea (o Foreign Key FK) es una limitación referencial entre dos tablas. La clave foránea identifica una columna o grupo de columnas en una tabla (tabla hija o referendo) que se refiere a …   Wikipedia Español

  • Primaria republicana de California — Primaria republicana de California, 2008 Saltar a navegación, búsqueda ‹ 2004 •   • 2012 › Primarias presidenciales del Partido Republicano en California de 2008 …   Wikipedia Español

  • Primaria demócrata en el extranjero — Primaria demócrata en el extranjero, 2008 Saltar a navegación, búsqueda La de primaria demócratas en el extranjero, 2008 es del 5 de febrero de 2008 (Súper Martes) hasta el 12 de febrero. La primera votación empezó a la media noche en Indonesia,… …   Wikipedia Español

  • Primaria demócrata de Virginia Occidental — Primaria demócrata de Virginia Occidental, 2008 Saltar a navegación, búsqueda Las primarias demócratas de Virginia Occidental, 2008 fueron el 13 de mayo, 2008 con las urnas cerrando a las 7:30 p.m. EST. Las votaciones estuvieron abierta para los… …   Wikipedia Español

  • Primaria demócrata de Dakota del Sur — Primaria demócrata de Dakota del Sur, 2008 Saltar a navegación, búsqueda Las Primarias demócratas de Dakota del Sur, 2008, fueron el 3 de junio de 2008. Resultados Para más detalles sobre este tema, véase Resultados las primarias presidenciales… …   Wikipedia Español

  • Primaria demócrata de Rhode Island — Primaria demócrata de Rhode Island, 2008 Saltar a navegación, búsqueda Las Primarias demócratas de Rhode Island, 2008, fueron el 4 de marzo de 2008. Resultados Clave: Retirado antes de la contienda Primaria Presidencial Demócrata de Rhode Island …   Wikipedia Español

  • Primaria demócrata de Vermont — Primaria demócrata de Vermont, 2008 Saltar a navegación, búsqueda Las Primarias demócratas de Vermont, 2008, fueron el 4 de marzo de 2008. Resultados Clave: se ha retirado antes de la contienda Primaria demócrata de Vermont, 2008 99% de los… …   Wikipedia Español

  • Primaria republicana de Indiana — Primaria republicana de Indiana, 2008 Saltar a navegación, búsqueda Las Primarias republicanas de Indiana de 2008 fueron hechas el 6 de mayo de 2008.[1] Además, 27 otros delegados fueron seleccionados durante la convención estatal hecha desde el… …   Wikipedia Español

  • Primaria demócrata de Kentucky — Primaria demócrata de Kentucky, 2008 Saltar a navegación, búsqueda Las Primarias demócratas de Kentucky, 2008, fueron hechas el 20 de mayo de 2008. El estado otorgó 60 delegados en la Convención Nacional Demócrata de 2008. De esos, 51 fueron… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”