39 - Eliminar restricciones (alter table - drop constraint)


Primer problema:
Una playa de estacionamiento almacena cada día los datos de los vehículos que ingresan en la tabla 
llamada "vehiculos".

1- Cree la tabla:
 create table vehiculos(
  patente char(6) not null,
  tipo char(1),--'a'=auto, 'm'=moto
  horallegada timestamp not null,
  horasalida timestamp
 );

2- Agregue una restricción "primary key" que incluya los campos "patente" y "horallegada"

3- Ingrese un vehículo:
 insert into vehiculos values('SDR456','a','2015/10/10 10:10',null);

4- Intente ingresar un registro repitiendo la clave primaria:
 insert into vehiculos values('SDR456','m','2015/10/10 10:10',null);
No se permite.

5- Ingrese un registro repitiendo la patente pero no la hora de llegada:
 insert into vehiculos values('SDR456','m','2015/10/10 12:10',null);

6- Ingrese un registro repitiendo la hora de llegada pero no la patente:
 insert into vehiculos values('SDR111','m','2015/10/10 10:10',null);

7- Vea todas las restricciones para la tabla "vehiculos"
 
8- Elimine la restricción "primary key".

9- Vea si se han eliminado
Ver solución

 drop table if exists vehiculos;

 create table vehiculos(
  patente char(6) not null,
  tipo char(1),--'a'=auto, 'm'=moto
  horallegada timestamp not null,
  horasalida timestamp
 );

 alter table vehiculos
  add constraint PK_vehiculos_patentellegada
  primary key(patente,horallegada);

 insert into vehiculos values('SDR456','a','2015/10/10 10:10',null);

 insert into vehiculos values('SDR456','m','2015/10/10 10:10',null);

 insert into vehiculos values('SDR456','m','2015/10/10 12:10',null);

 insert into vehiculos values('SDR111','m','2015/10/10 10:10',null);

 select *
  from information_schema.table_constraints 
  where table_name = 'vehiculos';

 alter table vehiculos
  drop constraint PK_vehiculos_patentellegada;

 select *
  from information_schema.table_constraints 
  where table_name = 'vehiculos';

 


Retornar