Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kalua

Fazer UPDATE sem alterar dados atuais

Recommended Posts

Olá a todos,

 

Eu gostaria de saber como eu consigo fazer um update sem alterar um determinado dado que não foi setado, ao invés de ficar em branco, eu gostaria de manter o dado e alterar somente as colunas que foram setadas.

 

Desde já agradeço a força.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exemplo:

CREATE TABLE alfabeto (
  id TINYINT NOT NULL AUTO_INCREMENT,
  letra CHAR(1) NOT NULL,
  PRIMARY KEY (id)
);

INSERT INTO alfabeto (letra) VALUES (1,'a'),(2,'b'),(3,'d');

UPDATE alfabeto SET letra='c' WHERE id = 3;

Veja que existem dois campos na tabela, mas eu só alterei o valor do campo `letra`.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O meu problema é que na minha instrução sql eu coloco todas as colunas, com intenção de deixar alterável todos os campos, mas o que eu quero é: quando houver uma situação em que não precisar alterar determinado campo, não modificar o dado deste campo.

 

Por exemplo:

$this->senha = null

$sql = "UPDATE tabela SET campos e values WHERE id = :id";


Quando eu coloco null para como acima o mysql apaga o dado atual e deixa nada, eu pensei que colocando null ele não alteraria nada, mas não foi o que aconteceu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teoricamente você mandou apagar o valor, torná-lo nulo.

 

A solução é fazer o campo receber o valor já existente, ou melhor, faz um UPDATE tabela SET campo = campo, reutilizando o mesmo exemplo que eu havia usado, ficaria desta forma:

UPDATE alfabeto SET id = id, letra = 'c' WHERE id = 3;

Compartilhar este post


Link para o post
Compartilhar em outros sites

poderia me ajudar com isso ae.. preciso saber como vou atualizar esse campo quando a pessoa sair do estabelecimento, pois quando ela entrar novamente vai criar outra linha com nova entrada esperando a saida.

 

e sistema de entrada e saida..

teste de update sql.jpg

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.