Ir para conteúdo

POWERED BY:

Arquivado

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

Sacomé

[Resolvido] UPdate GLobal

Recommended Posts

Fala galera, é o seguinte, estou com um software aqui que desenvolvi em php para locadora e estou precisando fazer uma manutenção.

 

Seguinte, tenho que mudar um nome de um filme para outro nome, até ai beleza era só dá UPDATE ETC..., mas tenho que mudar o nome desse filme em mais de 150 tabelas.

 

Eu não quero ter que escrever o nome de todas assim: UPDATE `tabela1`, `tabela2` etc.. SET ETC....

 

Teria uma maneira de dar um UPDATE em todas as tabelas sem ter que mensionar o nome de cada uma EX:

UPDATE `[a-zA-Z0-9]` SET ETC...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa eu pulo!!!

Coisa de louco hein!? 150 tabelas?

Sorte minha que inventaram e uso FOREIGN KEY!!!

 

 

Tem alguma relação as tabelas? Não usam FK?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem alguma relação as tabelas? Não usam FK?

 

FOREIGN KEY pra nome de tabela é BARRIL, já pra nome de campo era fácil

 

o nome do campo é `movie_name`, é esse mesmo nome em todas as tabelas, o que tá pegando é que não quero fazer:

 

UPDATE table1, table2, table3, table150,  
SET `movie_name` = replace(movie_name, 'antigo_nome','novo_nome') 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu desconheço algo do tipo...

Porém uma saída é criar um script PHP que faça isto pra ti.

 

Pode listar as tabelas usando o comando SQL

SHOW TABLES

ele vai te retornar um nome de tabalela por linha. E depois é só meter um foreach() que ta feito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E depois é só meter um foreach() que ta feito.

 

Creio que seja de fato o melhor a fazer.

 

[RESOLVIDO]

O melhor era com SHOW TABLES mesmo

 

$tables = mysql_query("SHOW TABLES FROM `nome_do_banco` ");
while ($t = mysql_fetch_array($tables)) {
   echo "{$t[0]}\n";
}

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.