COMO FAZER CONSULTA MYSQL VS 2012?

MLALEX 09/12/2014 14:47:03
#443087
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:

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?
LENDAURBANA 09/12/2014 17:43:43
#443094
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
MLALEX 10/12/2014 12:35:25
#443114
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???
TUNUSAT 10/12/2014 16:12:40
#443119
Resposta escolhida
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.
MLALEX 11/12/2014 11:36:49
#443135
Fiz tudo certo mas o código abaixo não retorna nada:

 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???
LIZA 11/12/2014 14:10:02
#443146
vou aproveitar as dicas, também estou iniciando em .net..
TUNUSAT 11/12/2014 14:16:57
#443148
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.
MLALEX 11/12/2014 19:20:23
#443158
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 é:
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