SALVAR DADOS NO BANCO DE DADOS.

SAMUELRIBEIRO 03/07/2013 18:29:41
#425537
Boa noite Senhores.

Estou tentando fazer um código para salvar dados de usuário no banco de dados, só que esta dando este erro.
[txt-color=#e80000]Erro 1 [ô]Salvar[ô] não é membro de [ô]Siscom.ConexaoMySql[ô].[/txt-color]
Sscom.ConexoMysql é minha classe de Conexão. O código é este abaixo:

Citação:

Private Sub btnNovo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNovo.Click
Dim objNovo As New ConexaoMySql
Dim Salvou As Boolean
[txt-color=#e80000]Salvou = objNovo.Salvar(txtUsuario.Text, txtSenha.Text, txtNivel.Text)[/txt-color]
If Salvou = True Then
MessageBox.Show([Ô]Cadastro Realizado com Sucesso[Ô])
Else
MessageBox.Show([Ô]Ocorreu um erro ao Tentar Concluir o Cadastro[Ô])
End If
End Sub


A linha em vermelho é onde esta dando o erro. E verificando bem não tem nada referente a Salvar na classe de conexão mesmo.

Alguém sabe como devo fazer para resolver este problema.
KERPLUNK 03/07/2013 18:50:02
#425538
Resposta escolhida
Mostre a classe ConexaoMySql
SAMUELRIBEIRO 03/07/2013 18:56:00
#425539
Boa noite KERPLUNK.

Segue abaixo o código da classe de conexão.

Citação:

Imports MySql.Data.MySqlClient
Imports System.Data.DataSet


Public Class ConexaoMySql
Public Conexao_MySql As New MySqlConnection(ConStr)
Public Function ConStr() As String
ConStr = [Ô]Server = localhost; User Id = root; Password = [Ô][Ô]; Database = banco de dados[Ô]
End Function
Public Sub AbrirConexao(ByVal ConStr As String)
Try
Using Conexao_MySql As New MySqlConnection(ConStr)
Conexao_MySql.Open()
frmLogin.Text = Conexao_MySql.State
End Using
Catch ex As MySqlException
MsgBox([Ô]Não foi possivel conectar ao Banco de Dados[Ô], MsgBoxStyle.Critical, [Ô]Sistema de Automação Comercial - Aviso[Ô])

End Try
End Sub
End Class



Desde já agradeço.
KERPLUNK 03/07/2013 18:59:47
#425540
Deixa eu adivinhar, você simplesmente pegou o código de algum lugar e colou, certo? Não tem a menor idéia do que é e nem como usar...
Amigo, a classe que você mostrou, vai servir para muito pouco, ela simplesmente faz a conexão com o banco e nada mais, nem ao menos disponibiliza essa conexão para um objeto externo que queira utilizá-la.
O que exatamente você quer fazer?
KERPLUNK 03/07/2013 19:05:27
#425541
Se quer aprender a programar orientado a objeto, ótimo! Ajudo com o maior prazer, mas a primeira coisa a fazer é entender uma coisa bem simples: Aprende-se primeiro o conceito, depois se aplica o conceito ao código e não ao contrário.
SAMUELRIBEIRO 03/07/2013 19:08:21
#425542
Meu amigo, só quero que a minha classe de conexão funcione para todos os meus códigos, e o sistema que estou desenvolvendo é muito grande, já tentei vários códigos de classes para conexão que peguei neste fórum e infelizmente todos deram problemas. Inclusive este.
Você pode me indicar um completo?
Ou este que segue abaixo Serve?

Citação:

Imports MySql.Data.MySqlClient
Imports System.Data.DataSet
Public Class ConexaoMySql

Private mConexao As New MySqlConnection
Private mComando As New MySqlCommand
Private mDataAdap As New MySqlDataAdapter
Private mDataRead As MySqlDataReader

Private usuarioServidor As String
Private usuarioBancoDeDados As String
Private usuarioLogin As String
Private usuarioSenha As String

Public Property ServidorUs() As String
Get
Return usuarioServidor
End Get
Set(ByVal value As String)
usuarioServidor = value
End Set
End Property

Public Property BancoDeDadosUs() As String
Get
Return usuarioBancoDeDados
End Get
Set(ByVal value As String)
usuarioBancoDeDados = value
End Set
End Property

Public Property LoginUs() As String
Get
Return usuarioLogin
End Get
Set(ByVal value As String)
usuarioLogin = value
End Set
End Property

Public Property SenhaUs() As String
Get
Return usuarioSenha
End Get
Set(ByVal value As String)
usuarioSenha = value
End Set
End Property

Sub New(ByVal servidor As String, ByVal usuario As String, ByVal senha As String, ByVal bancoDeDados As String)
ServidorUs = servidor
LoginUs = usuario
SenhaUs = senha
BancoDeDadosUs = bancoDeDados
End Sb

Public Sub ConectarMySql()
If Not mConexao.State = ConnectionState.Open Then
Dim strConexao As String = [Ô]Data Source=[Ô] + ServidorUs + [Ô];user id=[Ô] + LoginUs + [Ô];password=[Ô] + SenhaUs + [Ô]; database=[Ô] + BancoDeDadosUs
mConexao = New MySqlConnection()
mConexao.ConnectionString = strConexao
mConexao.Open()
End If
End Sub

Public Sub DesconectarMySql()
If mConexao.State = ConnectionState.Open Then
mConexao.Close()
mConexao.Dispose()
mConexao = Nothing
End If
End Sub

Public Function ExecutaDataTable(ByVal sql As String) As DataTable
Dim mDataTable As New DataTable
Try
ConectarMySql()
mComando.CommandType = CommandType.Text
mComando.CommandText = sql
mComando.Connection = mConexao
mDataAdap.SelectCommand = mComando
mDataAdap.Fill(mDataTable)
mDataAdap.Dispose()
Return mDataTable
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return mDataTable
End Function

Public Function ExecutaDataRead(ByVal sql As String) As MySqlDataReader
mDataRead = Nothing
Try
ConectarMySql()
mComando.CommandType = CommandType.Text
mComando.CommandText = sql
mComando.Connection = mConexao
mDataRead = mComando.ExecuteReader()
mComando.Dispose()
Return mDataRead
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return mDataRead
End Function

Public Function ExecutaQuery(ByVal sql As String) As MySqlCommand
Try
ConectarMySql()
mComando.CommandType = CommandType.Text
mComando.CommandText = sql
mComando.Connection = mConexao
Return mComando
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
Return mComando
End Function
End Class

KERPLUNK 03/07/2013 19:16:35
#425544
Bem, esse outro tem algumas outras funcionalidades e talvez possa ser útil pra você. Mas se entendi o que você quer fazer, é um modo de abstrair o banco de dados, certo?
SAMUELRIBEIRO 03/07/2013 19:33:42
#425545
é o que eu tenho em mente.
Você que este outro código pode fazer o que eu tenho em mente?
Ou preciso de outro mais completo.
FELLIPEASSIS 03/07/2013 20:13:56
#425546
vc está trabalhando com POO (orientaçao a objeto)? tres camadas?
KERPLUNK 04/07/2013 09:04:25
#425554
Citação:

:
é o que eu tenho em mente.
Você que este outro código pode fazer o que eu tenho em mente?
Ou preciso de outro mais completo.


Você ainda não entendeu. Esqueça código, não é por aí que você vai conseguir evoluir. Aprenda conceitos, decida o que quer fazer e depois saia escrevendo código.
SAMUELRIBEIRO 04/07/2013 14:38:07
#425568
Boa tarde FelipeAssis.

é Orientação a objetos sim.
Página 1 de 2 [15 registro(s)]
Tópico encerrado , respostas não são mais permitidas