1
resposta

Exercício : Mudando o volume de compra dos clientes que possuem vendedores em seus bairros

Ao rodar o script :

    'UPDATE CLIENTES A INNER JOIN VENDEDORES B
        ON A.BAIRRO = B.BAIRRO
            SET A.VOLUME_COMPRA = A.VOLUME_COMPRA * 1.30'

está retornando o erro :

Update mode and you tried to update a table without a WHERE that uses a KEY column.  To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.

O que seria esse modo seguro ? É para assegurar a tabela de gente que está começando na área como eu (sic) ? Corrija-me, por favor, mas não recordo em algum momento da aula ser mencionado a necessidade dessa alteração de segurança . Acredito que seja interessante avisar no enunciado da questão senão o comando não vai rodar. Grande Abraço!

1 resposta

Olá Marcelo, tudo bem?

Em algumas instalações do MySQL, a opção de atualizações seguras fica habilitada, assim você não pode atualizar ou excluir registros sem utilizar a cláusula WHERE especificando uma chave primária. Para resolver isso, execute o seguinte comando:

SET SQL_SAFE_UPDATES = 0;

E depois tenta realizar a atualização:

  UPDATE CLIENTES A INNER JOIN VENDEDORES B
       ON A.BAIRRO = B.BAIRRO
          SET A.VOLUME_COMPRA = A.VOLUME_COMPRA * 1.30

Você pode também sugerir alteração nesta atividade para que seja inserida uma observação sobre esse problema, assim o pessoal responsável vai analisar e então fazer as alterações necessárias, então você pode clicar nos três pontinhos no canto superior direito da tela e acessar a opção SUGERIR ALTERAÇÃO:

SUGERIR ALTERAÇÃO

Fala pra gente se funcionou!