11 - Clave primaria.


Problema:
Trabaje con la tabla "libros" de una librería.

1- Elimine la tabla si existe.

2- Créela con los siguientes campos y clave: codigo (integer), 
   titulo (cadena de 20 caracteres de longitud), autor (cadena de 30), 
   editorial (cadena de 15), codigo será clave primaria:
 create table libros(
  codigo integer,
  titulo varchar(20),
  autor varchar(30),
  editorial varchar(15),
  primary key(codigo)
 );

3- Visualice la estructura de la tabla "libros", compruebe la clave primaria.

4- Ingrese los siguientes registros:
 1,El aleph,Borges,Planeta;
 2,Martin Fierro,Jose Hernandez,Emece;
 3,Aprenda PHP,Mario Molina,Emece;
 4,Cervantes y el quijote,Borges,Paidos;
 5,Matematica estas ahi, Paenza, Paidos;

5- Seleccione todos los registros.

6- Ingrese un registro con código no repetido y nombre de autor repetido.

7- Ingrese un registro con código no repetido y título y editorial repetidos.

8- Intente ingresar un registro que repita el campo clave (aparece mensaje de error 
   por clave repetida).



 

Otros problemas:
A) Una empresa almacena los datos de sus clientes en una tabla llamada "clientes".

1- Elimine la tabla "clientes" si existe:
 drop table if exists clientes;

2- Créela con los siguientes campos y clave:
 create table clientes(
  documento varchar(8),
  apellido varchar(20),
  nombre varchar(20),
  domicilio varchar(30),
  telefono varchar (11),
  primary key(documento)
 );

3- Visualice la estructura de la tabla para comprobar la clave primaria establecida.

4- Ingrese los siguientes registros:
 insert into clientes (documento,apellido,nombre,domicilio, telefono)
   values('22345678','Perez','Marcos','Colon 123','4545454');
 insert into clientes (documento,apellido,nombre,domicilio, telefono)    
   values('23222222','Garcia','Ana','Avellaneda 1345','4252652');
 insert into clientes (documento,apellido,nombre,domicilio, telefono)   
   values('20454545','Lopez','Susana','Urquiza 344','4522525');
 insert into clientes (documento,apellido,nombre,domicilio, telefono)   
   values('35454545','Lopez','Susana','Urquiza 344','4522525');
Note que hay 2 registros con todos los datos iguales excepto el documento.

6- Ingrese un cliente con documento no repetido y apellido y nombre repetido.

7- Ingrese un cliente con documento no repetido y domicilio repetido.

8- Intente ingresar un registro con documento repetido (aparece mensaje de error por clave repetida).


B) Un instituto de enseñanza almacena los datos de sus estudiantes 
   en una tabla llamada "alumnos".

1- Elimine la tabla "alumnos" si existe.

2- Cree la tabla con la siguiente estructura:
 create table alumnos(
  legajo varchar(4) not null,
  documento varchar(8) not null,
  apellido varchar(30),
  nombre varchar(30),
  domicilio varchar(30),
  primary key (legajo)
 );

3- Ingrese los siguientes registros:
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('A233','22345345','Perez','Mariana','Colon 234');
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('A567','23545345','Morales','Marcos','Avellaneda 348');
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('B654','24356345','Gonzalez','Analia','Caseros 444');
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('A642','20254125','Torres','Ramiro','Dinamarca 209');
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('B509','20445778','Miranda','Carmen','Uspallata 999');
 insert into alumnos (legajo,documento,apellido,nombre,domicilio)
  values('C777','28111444','Figueroa','Natalia','Sarmiento 856');

4- Seleccione todos los registros.

5- Ingrese 2 alumnos con igual nombre y apellido pero distinto legajo.

6- Intente ingresar un registro que repita el campo clave ("legajo"). 
   Aparece mensaje de error por clave repetida).

Retornar