Ilano 0 Denunciar post Postado Maio 27, 2011 Olá pessoal, Estou precisando criar uma consulta em MySQL com base numa string montada pelo usuário. A coisa funciona assim: Tenho um RichEdit e um ComboBox que lista os campos de uma consulta. O usuário começa a digitar e, quando necessitar, inclui um campo da tabela (selecionando numa ComboBox) dentro do texto que é registrado entre chaves ({}), por exemplo: Certificamos que {NomedoAluno} concluiu, com aproveitamento, o {NomedoCurso} , realizado no período de {RealizacaodoCurso} , cujo funcionamento foi autorizado pela {Portaria} O que preciso fazer? Montar a seguinte sentença SQL: SELECT CONCAT("Certificamos que ", NomedoAluno, " concluiu, com aproveitamento, o ", NomedoCurso, " , realizado no período de ", RealizacaodoCurso, " , cujo funcionamento foi autorizado pela ", Portaria) AS CAMPO_NOVOFROM tb_certificados Como posso fazer isso? Grato, Ilano. Compartilhar este post Link para o post Compartilhar em outros sites
Thiago Delalibera 1 Denunciar post Postado Maio 28, 2011 Você pode criar uma procedure de consulta, exemplo: sqlGeral -> Query Exemplo de como uso com o Firebird procedure TDM.ExecConsulta(SQL: string): string; begin sqlGeral.Transaction.Active:=False; sqlGeral.Close; sqlGeral.SQL.Text:=SQL; sqlGeral.Open; Result:=sqlGeral.FieldByName('RESULTADO').Value; Return Result; end; Essa procedure ai eu uso em meus projetos... entao ficaria assim: String:='Certificamos que '+DM.ExecConsulta('SELECT NOMEDOALUNO AS RESULTADO FROM TB_CERTIFICADO WHERE CODIGO=')+', concluiu com aproveitamento...'; O único Problema são as várias consultas neste caso, porém essa procedure pode ser usado para vários tipos de consultas rápidas! No caso se desejar realizar apenas uma consulta ao invés de usar a procedure execute uma consulta selecionando todos os campos e concatenando na sua string, espero te ajudado. Abraço Compartilhar este post Link para o post Compartilhar em outros sites