PROBLEMA NA STORED PROCEDURE
Boa tarde Galera,
estou com o seguinte problema, estou reescrevendo as minhas aplicações de vb6 em vb.NET, mas estou com dificuldade em executar as Stored Procedures.
já tentei de varias formas porém ele diz que não existe esta procedure no banco de dados... a mensagem é a seguinte:
Procedure or function [ô]'CONSULTA_catalogo'[ô] cannot be found in database [ô]'BANCO'[ô].
Alguém sabe me dizer o porque ocorre isso?? quando faço uma consulta normal de dados eu consigo mas não consigo executar uma SP.
segue o exemplo do código abaixo:
Imports System.Data.sqlclient
Imports MySql.Data.MySqlClient
Public Class Form1
Public cn As New MySqlConnection
Public myCommand As New MySqlCommand
Public myAdapter As New MySqlDataAdapter
Public myData As New DataTable
Public ds As DataSet
Public SQL As String
Sub CONECTA(ByVal conexao As String, ByVal usuario As String, ByVal SENHA As String, ByVal base As String)
cn.ConnectionString = [Ô]server=[Ô] & conexao & [Ô];user id=[Ô] & usuario & _
[Ô];password=[Ô] & SENHA & [Ô];database=[Ô] & base & [Ô][Ô]
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
preenche_Tabela()
End Sub
Private Sub preenche_Tabela()
Call CONECTA([Ô]LOCALHOST[Ô], [Ô]ADMIN[Ô], [Ô]SENHA[Ô], [Ô]BANCO[Ô]) [ô] passa parametros de conexao
cn.Open()
MsgBox(cn.ConnectionString)
MsgBox(cn.State)
If cboCOD.Text.Length > 0 Then
Try
Dim dt As New DataTable
Dim da As New MySqlDataAdapter([Ô]CONSULTA_catalogo[Ô], cn)
da.SelectCommand.CommandType = CommandType.StoredProcedure
da.SelectCommand.Parameters.Add([Ô]p_COD[Ô], MySqlDbType.Double)
da.SelectCommand.Parameters([Ô]p_COD[Ô]).Value =cboCOD.Text [ô] codigo escolhido eu coloquei 1
da.Fill(dt)
Me.dgvClientes.DataSource = dt
Catch ex As Exception
End Try
Else
MsgBox([Ô]Selecione um CODIGO.[Ô])
End If
cn.Close()
End Sub
estou com o seguinte problema, estou reescrevendo as minhas aplicações de vb6 em vb.NET, mas estou com dificuldade em executar as Stored Procedures.
já tentei de varias formas porém ele diz que não existe esta procedure no banco de dados... a mensagem é a seguinte:
Procedure or function [ô]'CONSULTA_catalogo'[ô] cannot be found in database [ô]'BANCO'[ô].
Alguém sabe me dizer o porque ocorre isso?? quando faço uma consulta normal de dados eu consigo mas não consigo executar uma SP.
segue o exemplo do código abaixo:
Imports System.Data.sqlclient
Imports MySql.Data.MySqlClient
Public Class Form1
Public cn As New MySqlConnection
Public myCommand As New MySqlCommand
Public myAdapter As New MySqlDataAdapter
Public myData As New DataTable
Public ds As DataSet
Public SQL As String
Sub CONECTA(ByVal conexao As String, ByVal usuario As String, ByVal SENHA As String, ByVal base As String)
cn.ConnectionString = [Ô]server=[Ô] & conexao & [Ô];user id=[Ô] & usuario & _
[Ô];password=[Ô] & SENHA & [Ô];database=[Ô] & base & [Ô][Ô]
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
preenche_Tabela()
End Sub
Private Sub preenche_Tabela()
Call CONECTA([Ô]LOCALHOST[Ô], [Ô]ADMIN[Ô], [Ô]SENHA[Ô], [Ô]BANCO[Ô]) [ô] passa parametros de conexao
cn.Open()
MsgBox(cn.ConnectionString)
MsgBox(cn.State)
If cboCOD.Text.Length > 0 Then
Try
Dim dt As New DataTable
Dim da As New MySqlDataAdapter([Ô]CONSULTA_catalogo[Ô], cn)
da.SelectCommand.CommandType = CommandType.StoredProcedure
da.SelectCommand.Parameters.Add([Ô]p_COD[Ô], MySqlDbType.Double)
da.SelectCommand.Parameters([Ô]p_COD[Ô]).Value =cboCOD.Text [ô] codigo escolhido eu coloquei 1
da.Fill(dt)
Me.dgvClientes.DataSource = dt
Catch ex As Exception
End Try
Else
MsgBox([Ô]Selecione um CODIGO.[Ô])
End If
cn.Close()
End Sub
Putz já resolvi... vou deixar a solução postada para quem passar por isso.
no MySql o meu banco está [Ô]banco[Ô] tudo em minusculo (que é como fica automaticamente) e na chamada está [Ô]BANCO[Ô] em maiusculo.
o engraçado é que conecta normal e executa pesquisa normal, porem na Stored Procedure dá erro..
é só colocar o nome do banco em minusculo [Ô]banco[Ô] e funciona certinho..
valeu.. galera fui
no MySql o meu banco está [Ô]banco[Ô] tudo em minusculo (que é como fica automaticamente) e na chamada está [Ô]BANCO[Ô] em maiusculo.
o engraçado é que conecta normal e executa pesquisa normal, porem na Stored Procedure dá erro..
é só colocar o nome do banco em minusculo [Ô]banco[Ô] e funciona certinho..
valeu.. galera fui
Tópico encerrado , respostas não são mais permitidas