Ir para conteúdo
Danilo Simionato

Alteração de um campo em toda tabela

Recommended Posts

Bom dia, sou novo neste fórum, caso esteja na área errada me desculpe. 

 

Estou precisando fazer o seguinte procedimento. 

 

Vou explicar como cliente A e B. 

 

Meu cliente A comprou a loja do meu cliente B, ambos usam o mesmo sistema e preciso juntar os produtos do cliente B no banco do cliente A, só que os produtos possuem códigos dos produtos iguais e os produto  são diferentes. A minha ideia para esta junção era alterar os códigos do cliente B para um valor superior ao da A. Por exemplo, o cliente A vai do código 1 a 3000 os produtos e o B vai do 1 ao 1000, gostaria de fazer um update onde os produtos do cliente B tenham um campo a mais na frente, exemplo.

 

Código 1 update para 3001

Código 2 update para 3002

Código 3 update para 3003

Código 100 update para 300100

e assim por diante. Para desta forma os códigos ficarem maiores que o da loja A e não duplicarem os códigos. 

 

Alguém saberia me ajudar com isso? 

 

Desde já obrigado. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem o código de barra ? 

Ele é único, seria a base para unificar..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você precisa tomar cuidado pois em geral este código deve existir em outras tabelas.

Não creio que um SQL mágico vá resolver.

 

Uma ideia básica

na tabela origem apenas

desligar (se houver) as constraints (pk,fk)

fazer um update nas tabelas (a síntaxe depende do banco)

update <tabela> set cod_produto = '9' concatenado com cod_produto

 

Mas creio que o problema é um pouco maior ... 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por GustavoJacob15
      tenho um case assim no meu fonte: 
      ---------------------------------------------------------
      CASE RA_DEMISSA
          WHEN '' THEN 'DESLIGADO'
          ELSE 'ATIVO'
      END AS SITUACAO
      ---------------------------------------------------------
       
      Preciso colocar no where para mostar um parametro com 'ativo' ou 'desligado' 
       
    • Por JOSELUISALD
      Bom dia. Em minha aplicação o cliente quer uma cópia de seu sistema localmente e remoto (hospedado). Tem como eu fazer a sincronização dos bancos de dados, para que tudo que seja feito localmente seja inserido automaticamente no banco remoto? Desde já obrigado.
    • Por Caio_Lourençon
      Olá estou desenvolvendo um projeto utilizando a extensão MySQLi, e nisso aproveitando para utilizar algumas funções orientada a objeto! Gostaria de tirar umas dúvidas em relação a listagem de dados, são duas perguntas:   1) Utilizar a função foreach() ao invés de um while() com a função fetch_array() dentro, tem uma listagem mais rápida ou mais lenta? Pois com ambas consigo trazer os dados, No momento estou utilizando a foreach por ser mais rápida de se digitar.
      2) Utilizo muitas listagens de tabelas diferentes na mesma página sempre chamando um novo SELECT, seria melhor criar uma função com um SELECT dentro para eu sempre reutiliza-lá ou não iria mudar muita coisa em questão de desempenho?
       
      Agradeço qualquer informação.
    • Por gersonab
      Procuro uma revenda de hospedagem confiável, ja adianto que uolhost e locaweb estão fora dos planos.
    • Por Jefferson andre
      Ola, estou criando um contador de acessos diario mas nao funciona, a tabela tem o campo data no formato date e o campo contador int(10)
       
      A ideia eh verificar a data e se nao existir incluir na tabela, se existir adicionar ao contador
       
      Parece que o erro esta no formato da data, nem manualmente consigo incluir na tabela via localhost ou na hospedagem da google
       
      Agradeço qualquer ajuda
       
      <?php // fazendo uma conexão com o banco de dados include("conexao.php"); // grava a data atual em uma variavel date_default_timezone_set('America/Sao_Paulo'); $date = date('d-m-Y'); //$sql = "SELECT codigo FROM contador"; $resultado = $arquivo->query("SELECT data,contador FROM contador_diario WHERE data = '$date'"); if (mysqli_num_rows($resultado)== true){ // registro ja existe } else { // resultado nao encontrado entao inserir $sql = "INSERT INTO contador_diario ('data', 'contador') VALUES ('$date', '1')"; if ($arquivo->query($sql) == TRUE) { echo "Data cadastrada com sucesso"; } else { echo "Erro: " . $sql . "<br>" . $arquivo->error; } } // refaz a pesquisa para registrar o contador $resultado = $arquivo->query("SELECT data,contador FROM contador_diario WHERE data = '$date'"); // igualar a array a uma variavel $linha=mysqli_fetch_array($resultado); $cod_2 = $linha["contador"]+1; // lista a variavel //echo "<font face='Arial'><span class='style14'>$cod_2</span></font>"; $sql = "UPDATE contador_diario SET contador=$cod_2"; if ($arquivo->query($sql) === TRUE) { // echo "Alteração efetuada com sucesso"; } else { // echo "Erro alterando o contador de visitas diario" . mysqli_error($arquivo); } // fecha a conexao mysqli_close($arquivo); ?>  
×

Informação importante

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