Sonyer Postado Abril 8, 2010 Denunciar Share Postado Abril 8, 2010 Boa tarde pessoal,Gostaria de saber se alguém conhece uma função para criar códigos SQL, dávamos somente a tabela e os arrays com informações e o tipo de chamada que queremos, por exemplo:$values = array( 'coluna1' => $_GET['querystring'] ) $db->gerarsql('insert', 'tabela');E este código imprimia um código SQL do tipoINSERT INTO 'tabela' VALUES...Entendem? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoGomes Postado Abril 8, 2010 Denunciar Share Postado Abril 8, 2010 Conhecer eu não conheço nunca foi necessário para mim fazer algo do tipo.Mas não é difícil fazer uma função assim, e dependendo do que você deseja, talvez nem seja necessário criar uma função.Eu poderia dar um exemplo, se explicasse melhor o que deseja. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoGomes Postado Abril 8, 2010 Denunciar Share Postado Abril 8, 2010 (editado) bom, segue um exemplo:function gerarsql($query, $tabela, $valor) { if($query=="insert"){ $query_c = 'INSERT INTO '.$tabela.' VALUES ('.$valor.')'; } elseif($query=="select"){ $query_c = 'SELECT * FROM '.$tabela.' WHERE '.$valor.''; } else{ $query_c = 'Query desconhecida.'; } return $query_c; }mas não é muito prático, você vai ter que preparar bem os valores antes de mandar pra função.edit.: fiz a mão agora, então pode ser que não esteja 100% correto. Editado Abril 8, 2010 por Vampyro Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Sonyer Postado Abril 8, 2010 Autor Denunciar Share Postado Abril 8, 2010 Sim, é mais ou menos assim!O que queria era que para ficar mais fácil eu pudesse usar um array com valores e chaves, a chave representa a coluna e o valor o valor mesmo, por exemplo:$values = array( 'coluna' => $_GET['querystring'], 'coluna2' => $_GET['querystring1'] ) Gerava: INSERT INTO 'tabela' (coluna, coluna2) VALUES('123', '456')Ai fica a praticidade! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RodrigoGomes Postado Abril 8, 2010 Denunciar Share Postado Abril 8, 2010 sim, também não é difícil, basta tratar os valores da array para se encaixar na query, porém, cada uma das atividades precisam de um tratamento diferente. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Sonyer Postado Abril 8, 2010 Autor Denunciar Share Postado Abril 8, 2010 Teria como me dar um exemplo somente com a função insert? Assim eu teria como fazer para as outras!Seria possível?Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 m3io Postado Abril 9, 2010 Denunciar Share Postado Abril 9, 2010 por acaso dava jeito assim uma funcao k desse pra obter varias colunas com valores diferentes, pk senao a funcao não nos vai dar grande parte da sua funcionalidade Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Willian Gustavo Veiga Postado Abril 9, 2010 Denunciar Share Postado Abril 9, 2010 É só utilizar o exemplo do Vampyro mais um implode para o valor.Um abraço, tudo de bom. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Durub Postado Abril 10, 2010 Denunciar Share Postado Abril 10, 2010 Esse insert que você deseja ficaria assim:function gerarinsert($tabela, $_valores) { $tipos = ''; $valores = ''; foreach($_valores as $chave => $valor) { $tipos .= $chave . ', '; $valores .= '\'' . $valor . '\', '; } $tipos = trim($tipos, ', '); $valores = trim($valores, ', '); return "INSERT INTO '{$tabela}' ({$tipos}) VALUES ({$valores});"; } echo gerarinsert("clientes", array("nome" => "Joao", "idade" => 24));INSERT INTO 'clientes' (nome, idade) VALUES ('Joao', '24');Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Sonyer Postado Abril 11, 2010 Autor Denunciar Share Postado Abril 11, 2010 Obrigado, era isso mesmo! ;) Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Sonyer
Boa tarde pessoal,
Gostaria de saber se alguém conhece uma função para criar códigos SQL, dávamos somente a tabela e os arrays com informações e o tipo de chamada que queremos, por exemplo:
E este código imprimia um código SQL do tipo
INSERT INTO 'tabela' VALUES...
Entendem?
Link para o comentário
Compartilhar em outros sites
9 respostass 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.