Variável de substituição no MySQL
26/11/2015
0
Estou começando minha carreira na área de desenvolvimento e estou com algumas dificuldades com o banco de dados (uso MySQL).
Em uma consulta para emissão de um relatório, gostaria de utilizar uma variável de substituição '&', para que seja solicitado um valor ao usuário quando executar a pesquisa.
select employee_id, last_name, salary, department_id from employees where employee_id = &employee_num;
Porém no MySQL, o '&' não é aceito para pedir a variável. Alguém sabe me informar qual seria uma forma de o usuário digitar este valor sem ser diretamente no código?
OBS: utilizo o HeidiSQL para manipular os dados.
Gabriel
Post mais votado
26/11/2015
Vi que o Marcos não deve ter conhecimento sobre esse assunto.
Resta nós esperarmos por outro para nos ajudar.
Srs muita calma, o colega "Marcos P" possui muitos conhecimentos e constantemente está ajudando em vários posts aqui no fórum, ocorre que as vezes as dúvidas não estão bem descritas, eu mesmo tenho problema em entender certos posts.
Quanto a dúvida do post, já usei essa parametrização com Firebird na ferramenta IBExpert onde usamos como parâmetro ":parametro", quando executo é aberto uma janela para passar o valor.
Mês passado tivemos uma dúvida parecida como essa, mas era com parametrização no phpMyAdmin.
Infelizmente fiz várias pesquisas na época com phpMyAdmin e MySQL Workbench mas nunca achei nada que pudesse servir como parâmetro.
William
Mais Posts
26/11/2015
Amarildo Junior
26/11/2015
Marcos P
Não entendi a parte em que você fala : "... para que seja solicitado um valor ao usuário quando executar a pesquisa".
Sua intenção é que o MySql abra um prompt qualquer e você possa digitar o valor da variável conforme sua necessidade. É isso ?
Acho que você está confundido as coisas...
O "&" no mySQL é um operador de comparação bit a bit, que não tem ligação nenhuma com o enunciado do seu post.
Se você deseja trabalhar com variáveis locais no escopo de qualquer objeto programável do mySql ( procedures, triggeres, functions,... ), deve declarar as variáveis necessárias no corpo do objeto. Esse link, descreve como declarar variáveis e utilizá-las.
Em relação ao usuário fornecer valores durante a execução da query, isso não existe em nenhum gerenciador de banco de dados relacional. Valores dinâmicos devem ser repassados externamente ao banco, via aplicação ou outro script sql.
26/11/2015
Gabriel
Isso mesmo, gostaria que abrisse um prompt para digitar o valor da variável.
Obrigado
26/11/2015
Marcos P
26/11/2015
Gabriel
Engraçado vc dizer isso, por que o exemplo que eu tirei foi justamente de fontes da Oracle, mas não está funcionando
Até mais
26/11/2015
Amarildo Junior
Entendo sua resposta.
Mas acho, que eu e o Gabriel estamos perguntando seja muito diferente do que você respondeu.
Há um manual da Própria Oracle (Banco de Dados Oracle 10g:
Fundamentos de SQL I), que diz o seguinte:
É possível criar "variáveis de substituição" no iSQL Plus ( Gerenciador de Banco de Dados Relacional ), apenas utilizando um E comercial (&) na frente da variável,
exatamente como nosso amigo Gabriel fez "&employee_num".
No iSQL Plus funciona, ele abre uma caixa de texto pedindo para colocar o valor que deseja nessa variável, assim, dando dinamismo para uma busca simples no próprio banco de dados sem a necessidade de um software externo ao banco.
Em suma, acho que o que queremos, é saber se o MySQL através do HeidSQL, possibilita usar variáveis de substituição, se sim, como usa-la.
26/11/2015
Gabriel
Existe, se não me engano vi no Oracle SQL Developer.
Obrigado
26/11/2015
Amarildo Junior
Vi que o Marcos não deve ter conhecimento sobre esse assunto.
Resta nós esperarmos por outro para nos ajudar.
26/11/2015
Marcos P
Estou começando minha carreira na área de desenvolvimento e estou com algumas dificuldades com o banco de dados (uso MySQL).
E, portanto, minha resposta foi sobre o mySql.
Se vocês estão tão adiantados assim nas suas pesquisas e testes em Oracle, ótimo !
Tomará que alguém passe por aqui e os ajude...
26/11/2015
Gabriel
Estou começando minha carreira na área de desenvolvimento e estou com algumas dificuldades com o banco de dados (uso MySQL).
E, portanto, minha resposta foi sobre o mySql.
Se vocês estão tão adiantados assim nas suas pesquisas e testes em Oracle, ótimo !
Tomará que alguém passe por aqui e os ajude...
Marcos,
Sim a pergunta é sobre MySQL. Eu gostaria de saber se alguém pode me ajudar a usar essa ferramenta do Oracle no HeidiSQL.
Obrigado
08/05/2016
Edivaldo Alcantara
Clique aqui para fazer login e interagir na Comunidade :)