Israel Nogueira Postado Junho 25, 2015 Denunciar Share Postado Junho 25, 2015 (editado) Gente, estou quebrando a cabeça aqui. Tenho um sistema próprio, e que faz UPDATE de novas versões. No update, ele verifica as tabelas e colunas, e adiciona as colunas novas. O problemas é q o script é feito em PHP e varre o banco de dados inteiro procurando se a coluna da versão nova existe. Se não existir adiciona, porém isso acaba gerando script lento. Precisava de um script inteiro em sql... para ficar mais rápido... Comecei a montar um aqui mas não estou conseguindo. Alguém pode montar pra mim? Preciso de algo tipo assim: IF( TABELA X EXISTE ){ IF(COLUNA Y NÃO EXISTE NA TABELA X){ ADICIONA COLUNA } }; Editado Junho 25, 2015 por Israel Nogueira Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Junho 26, 2015 Denunciar Share Postado Junho 26, 2015 O Mysql tem um dicionario de dados em forma de banco de dados chamado information_schema.dentro dele tem uma tabela chamada columns. É só varrê-la pra saber se a coluna que você está procurando, existe nas tabela e no bd desejado.Você vai precisar destes campos:`TABLE_SCHEMA` nome do banco,`TABLE_NAME` nome da tabela e`COLUMN_NAME` nome da coluna.O resto é facil. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Israel Nogueira
Gente, estou quebrando a cabeça aqui.
Tenho um sistema próprio, e que faz UPDATE de novas versões.
No update, ele verifica as tabelas e colunas, e adiciona as colunas novas.
O problemas é q o script é feito em PHP e varre o banco de dados inteiro procurando se a coluna da versão nova existe.
Se não existir adiciona, porém isso acaba gerando script lento.
Precisava de um script inteiro em sql... para ficar mais rápido...
Comecei a montar um aqui mas não estou conseguindo.
Alguém pode montar pra mim? Preciso de algo tipo assim:
IF( TABELA X EXISTE ){
IF(COLUNA Y NÃO EXISTE NA TABELA X){
ADICIONA COLUNA
}
};
Editado por Israel NogueiraLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.