Ir para conteúdo

POWERED BY:

Arquivado

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

''''''''''''''

Adicionar conteudo sem remover!

Recommended Posts

Bom, serei bem direto...

Quero saber como faço para adicionar conteudo na celula da tabela sem remover os outros conteudos da mesma cellula;

EX:

307|986|1018|1118|1335|1362|1387|1388|1390|1391

Tenho isso na tabela, exatamente como esta ali encima!

Nao quero que some e sim adicione mais 1 numero ficando assim:

307|986|1018|1118|1335|1362|1387|1388|1390|1391|1293

 

Meu objetivo é fazer um botao que adicione os determinados numeros que eu mandar!! Porem, pode ser obvio mais vou dizer igualmente, os numeros sao diferentes em todas celulas!

 

Se puderem me ajudar e puserem um exemplo basico de como farei isto :/

Abraços' E vlws!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá pra fazer usando uma variável e a função concat_ws().

 

A variável @nova vai armazenar o valor antigo da célula concatenado com a string que você passar como argumento e o separador que você escolher, no caso; '|'.

SET @nova=(SELECT concat_ws('|', (SELECT nomeColuna FROM tabela WHERE chavePrimaria = ##), '1293'));

 

Depois é só você fazer um UPDATE usando a variável @nova.

UPDATE tabela SET nomeColuna = @nova WHERE chavePrimaria = ##;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poderia revisar o comando assim para mim?

A pontuação dele esta incorreta!

E eu gostaria de saber para que serve algumas funções citadas abaixo:

 

SET (Por que ela fica na frente?)

@ (nao seria $?)

e no nomeColuna = $nova ( Nao deveria ficar nomeColuna = '$nova'?

Nunca me deu bem com o Mysql =(

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá;

 

-> SET: Serve para setar, definir ou configurar algo, como uma variável ou um argumento para o comando UPDATE

-> @ E $: Na linguagem SQL, as variáveis tem que ser precedidas por um @, e são setadas usando a palavra SET.

Acho que você tá fazendo uma mistureba, pois em PHP e Shell Script que as variáveis são precedidas por $ .

Nesse caso, estamos definindo que a variável "@nova" vai receber o valor retornado pelo

SELECT concatenando com outro valor que você passar usando a função CONCAT_WS.

 

------------------------------------------------------------------------------------------------------------------------------------------------------------

 

Pelo que eu entendi, apesar de ser bem estranho, esses valores que você passou - 307|986|1018|1118|1335|1362|1387|1388|1390|1391 - estão em apenas

uma coluna de uma linha da sua tabela e você quer concatenar alguma coisa a eles.

Eu já precisei fazer alguma coisa parecida e um colega me instruiu a usar a maneira que eu postei anteriormente, mas eu dei uma olhada aqui e descobri que tem um jeito mais fácil.

Basta fazer esta query;

 

UPDATE tabela SET nomeColuna = concat_ws('|', nomeColuna, '1293') WHERE chavePrimaria = ##;

 

Esse expediente funciona bem, mas você deve considerar que você definidu um valor limite para quantidade de caractéres que essa coluna suporta, e concatenando constantemente, em algum momento este valor vai ser atingido.

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.