Herramientas de usuario

Herramientas del sitio


bloque4:sql

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque4:sql [2022/05/13 07:48] – [Definición de una Base de Datos (Sentencias DDL)] fernandobloque4:sql [2024/09/16 19:34] (actual) – editor externo 127.0.0.1
Línea 280: Línea 280:
 </code> </code>
  
-Hay que tener en cuenta que a la hora de definir claves primarias compuestas (la componen 2 ó más campos de            la tabla), ésta deberá ser definida forzosamente tras la definición de los campos involucrados, siguiendo            esta sintaxis+Hay que tener en cuenta que a la hora de definir claves primarias compuestas (dos ó más columnas), ésta deberá ser definida forzosamente tras la definición de los campos involucrados, siguiendo            esta sintaxis
 <code sql> <code sql>
 CREATE TABLE personas( CREATE TABLE personas(
Línea 291: Línea 291:
  
 === Autonumérico === === Autonumérico ===
-Es una propiedad que solo se nos permite añadir columnas de tipo entero que sean clave primaria. Hace que en cada inserción de nuevos registros en esa tabla, la clave primaria se genere automáticamente de forma secuencial. Es realmente útil ya que nos evita tener que dar valor a esa columna, siendo el motor de la base de datos el encargado de que sea siempre distinta.+Es una propiedad que solo se puede aplicar claves primarias de tipo entero. Hace que en cada inserción de nuevos registros en esa tabla, la clave primaria se genere automáticamente de forma secuencial. Es realmente útil ya que nos evita tener que dar valor a esa columna, siendo el motor de la base de datos el encargado de que sea siempre distinta.
  
 La forma de definirlo es añadiendo la restricción ''AUTO_INCREMENT'' en la definición de la columna que se ha definido como clave primaria: La forma de definirlo es añadiendo la restricción ''AUTO_INCREMENT'' en la definición de la columna que se ha definido como clave primaria:
Línea 302: Línea 302:
 ALTER TABLE mitabla AUTO_INCREMENT = 1; ALTER TABLE mitabla AUTO_INCREMENT = 1;
 </code> </code>
 +Si la tabla no está vacía, debe ser mayor que el último valor de esa columna.
  
 === Clave ajena === === Clave ajena ===
Línea 429: Línea 430:
  
 <code sql> <code sql>
 +CREATE TABLE libro(
 +id INT ...,
 +titulo ...,
 +autor VARCHAR(20),
 INDEX autor_index (autor) INDEX autor_index (autor)
 +);
 + 
 +-- También puedo añadirlo cuando la tabla ya se ha creado
 +CREATE INDEX indice_autor ON libro(autor);
 </code> </code>
  
bloque4/sql.1652428102.txt.gz · Última modificación: 2024/09/16 19:34 (editor externo)