COMO FAZER CONSULTA MYSQL VS 2012?
Olá pessoal. Estou com o VS2012 tentando fazer uma consulta em banco de dados MySQL. Já conectei no banco de dados. No [Ô]Configurar Data Source[Ô], inseri o seguinte comando:
Como fazer a consulta ser disparada de um botão baseada nos valores digitados em um TextBox?
SELECT Protocolo, Data, Telefone, Operadora, FROM MinhaTabela WHERE (Protocolo = @param)
Como fazer a consulta ser disparada de um botão baseada nos valores digitados em um TextBox?
Boa Tarde,
Da uma estudada pelo http://www.macoratti.net la tem muito codigo bom para aprender a fazer as coisas.
Tudo de VB.Net
http://www.macoratti.net/pageview.aspx?catid=1
Exemplos de Uso de BD
http://www.macoratti.net/vbn_cgb1.htm
http://www.linhadecodigo.com.br/artigo/147/operacoes-basicas-com-banco-de-dados-e-vbnet.aspx
Da uma estudada pelo http://www.macoratti.net la tem muito codigo bom para aprender a fazer as coisas.
Tudo de VB.Net
http://www.macoratti.net/pageview.aspx?catid=1
Exemplos de Uso de BD
http://www.macoratti.net/vbn_cgb1.htm
http://www.linhadecodigo.com.br/artigo/147/operacoes-basicas-com-banco-de-dados-e-vbnet.aspx
Olá gente!! Descobri que a solução e o problema está no [Ô]Configurar Data Source[Ô]. Ele permite anexar o comando a um control mas não dá certo.
Observe na foto 1 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto1.jpg] ) que a opção de determinar o parâmetro não está habilitada e parece que isso provocar o erro na foto 2 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto2.jpg] )quando testo a query. Se faço manulamente dá certo a busca (foto 3 = [url=http://www.quasarproducoes.com.br/downloads/problema/foto3.jpg]), mas lá não me oferece a opção de associar o código a um Textbox, da foto 4 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto4.jpg] ) já pula para foto 5 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto5.jpg] ) . Aqui faço o teste e não dá erro, mas não retorna valor algum pois não foi definido o valor de @param.
Como faço isso???
Observe na foto 1 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto1.jpg] ) que a opção de determinar o parâmetro não está habilitada e parece que isso provocar o erro na foto 2 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto2.jpg] )quando testo a query. Se faço manulamente dá certo a busca (foto 3 = [url=http://www.quasarproducoes.com.br/downloads/problema/foto3.jpg]), mas lá não me oferece a opção de associar o código a um Textbox, da foto 4 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto4.jpg] ) já pula para foto 5 ( [url=http://www.quasarproducoes.com.br/downloads/problema/foto5.jpg] ) . Aqui faço o teste e não dá erro, mas não retorna valor algum pois não foi definido o valor de @param.
Como faço isso???
Me desculpem. Inseri errado os links. Segue os links corretos das fotos:
url=http://www.quasarproducoes.com.br/downloads/problema/foto1.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto2.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto3.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto4.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto5.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto1.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto2.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto3.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto4.jpg]
url=http://www.quasarproducoes.com.br/downloads/problema/foto5.jpg]
MLALEX,
Mas o valor [Ô]@Param[Ô] é uma variável. Você tem que passar para ela um valor.
Passando o valor para, por exemplo, uma Stored Procedure que conterá a Query e receberá o parâmetro passado. Exemplo:
============================================
Passando parametros para consulta mysql em C#
http://forum.imasters.com.br/topic/224830-passando-parametros-para-consulta-mysql-em-c/
============================================
Stored Procedures no MySQL
http://www.devmedia.com.br/stored-procedures-no-mysql/29030
============================================
Stored Procedures no MySQL
http://imasters.com.br/artigo/7556/mysql/stored-procedures-no-mysql/
============================================
MySQL Stored Procedure Parameters
Introduction to MySQL stored procedure parameters
http://www.mysqltutorial.org/stored-procedures-parameters.aspx
============================================
[][ô]s,
Tunusat.
Mas o valor [Ô]@Param[Ô] é uma variável. Você tem que passar para ela um valor.
Passando o valor para, por exemplo, uma Stored Procedure que conterá a Query e receberá o parâmetro passado. Exemplo:
============================================
Passando parametros para consulta mysql em C#
http://forum.imasters.com.br/topic/224830-passando-parametros-para-consulta-mysql-em-c/
============================================
Stored Procedures no MySQL
http://www.devmedia.com.br/stored-procedures-no-mysql/29030
============================================
Stored Procedures no MySQL
http://imasters.com.br/artigo/7556/mysql/stored-procedures-no-mysql/
============================================
MySQL Stored Procedure Parameters
Introduction to MySQL stored procedure parameters
http://www.mysqltutorial.org/stored-procedures-parameters.aspx
============================================
[][ô]s,
Tunusat.
Fiz tudo certo mas o código abaixo não retorna nada:
Sendo que criei a seguinte Procedure:
O que eu estou fazendo de errado???
Dim conexao As MySqlConnection [ô]variavel com string de conexao no banco
Dim dr As MySqlDataReader [ô]data reader
Dim cmdsql As MySqlCommand [ô]comando mysql
Dim parametro As New MySqlParameter [ô]parametro da stored procedure
conexao = New MySqlConnection([Ô]server=mysql.iluminacaopublica.net.br;user id=iluminacaopubl;password=ilu15362400;database=iluminacaopubl[Ô])
parametro.ParameterName = [Ô]@param[Ô] [ô]nome do parametro
parametro.Value = TextBox1.Text [ô]valor do parametro digitado pelo usuario
cmdsql = New MySqlCommand([Ô]Proced2[Ô], conexao)
cmdsql.CommandType = CommandType.StoredProcedure [ô]tipo de comando = stored procedure
cmdsql.Parameters.Add(parametro) [ô]adicionando parametro
conexao.Open() [ô]abrindo conexao
dr = cmdsql.ExecuteReader
Do While dr.Read
TextBox2.Text = dr([Ô]callvox[Ô]) [ô]mostrando resultado no textbox
Loop
conexao.Close() [ô]fechando conexao
Sendo que criei a seguinte Procedure:
ALTER DEFINER='meu_banco_de_dados'@'%' PROCEDURE 'Proced2'()
SELECT Reclamante
FROM callvox
WHERE Protocolo = [ô]@param[ô]
O que eu estou fazendo de errado???
vou aproveitar as dicas, também estou iniciando em .net..
MLALEX,
Por favor, dá uma olhada em um exemplo que acabei de montar:
===========================================================
PASSANDO DATATABLE PARA STORED PROCEDURE
http://www.vbmania.com.br/index.php?modulo=detalhe&id=9410&pagina=1
===========================================================
Tente adaptá-lo para o seu problema.
- A sua Stored Procedure está fazendo [Ô]Return[Ô] ou OUTPUT da informação que você quer resgatar?!?
LIZA,
Este é o espÃrito!!!
[][ô]s,
Tunusat.
Por favor, dá uma olhada em um exemplo que acabei de montar:
===========================================================
PASSANDO DATATABLE PARA STORED PROCEDURE
http://www.vbmania.com.br/index.php?modulo=detalhe&id=9410&pagina=1
===========================================================
Tente adaptá-lo para o seu problema.
- A sua Stored Procedure está fazendo [Ô]Return[Ô] ou OUTPUT da informação que você quer resgatar?!?
LIZA,
Este é o espÃrito!!!
[][ô]s,
Tunusat.
Valeu Tunusat!! Seu exemplo esclareceu outra dúvida minha. Mas descobri onde estava o erro em meu Procedure. Eu não declarei o parametro entre parêntese
O certo é:
ao invés de:
VALEU!!!!!
O certo é:
ALTER DEFINER='meu_banco_de_dados'@'%' PROCEDURE 'Proced2'(in @param text)
ao invés de:
ALTER DEFINER='meu_banco_de_dados'@'%' PROCEDURE 'Proced2'()
VALEU!!!!!
Tópico encerrado , respostas não são mais permitidas