Atualizar (Update) em MySQL?

Em minha logica, ao deletar um registro usando o sistema, eu seto ativo false e quando tento fazer isso acontece este erro:

Erro ao excluir Cannot delete or update a parent row: a foreign key constraint fails (estacionamento.servico, CONSTRAINT servico_ibfk_1 FOREIGN KEY (idCarro) REFERENCES carro (id))

Este é meu banco no mySQL

create table cliente(
  id int not null auto_increment  primary key,
  nome varchar(45),
  ativo boolean default true,
  tipo enum('Servidor','Público')
);

create table carro(
  id int not null auto_increment primary key,
  placa char(8) not null unique,
  cor varchar(45),
  modelo varchar(45),
  marca varchar(45) ,
  ativo boolean default false,
  idCliente int not null,
  Foreign key (idCliente) references cliente(id)
);

create table servico(
  id int not null auto_increment  primary key,
  hora_entrada datetime,
  hora_saida datetime,
  valor double,
  ativo boolean default true,
  idCarro int,
  Foreign key (idCarro) references carro(id)
);

já tentei mudar todas as fk para CASCADE,SET NULL, NO ACTION e nenhuma resolveu?

De tanto mexer piorei :frowning: e agora não sei porque mas o ResultSset da tabela de carro, vem com no máximo 6 resultados, ta parecendo que se tem 6 registros, se inserir +1, ele apaga o primeiro

create table servico(
  id int not null auto_increment  primary key,
  hora_entrada datetime,
  hora_saida datetime,
  valor double,
  ativo boolean default true,
  idCarro int,
  Foreign key (idCarro) references carro(id)
);

Acrescentar no final do seu código como abaixo

on update cascade


create table servico(
  id int not null auto_increment  primary key,
  hora_entrada datetime,
  hora_saida datetime,
  valor double,
  ativo boolean default true,
  idCarro int,
  Foreign key (idCarro) references carro(id) on update cascade
);
1 curtida