REPETICAO DE MENSAGEM DE CONEXAO.

SAMUELRIBEIRO 18/06/2013 18:36:03
#424953
Boa noite Senhores.

Graças a ajuda de vocês consegui fazer a conexão com o banco de dados e colocar a data e a hora em duas Labels.
Só que agora quando eu executo o sistema fica abrindo a menssageBox [Ô]Conexão Aberta com Sucesso[Ô] uma em cima da outra. Segue abaixo o código de conexão.

Citação:

Imports MySql.Data.MySqlClient

Public Class frmLogin
Dim conn As New MySqlConnection
Dim MyCommand As New MySqlCommand
Dim MyAdapter As New MySqlDataAdapter
Dim MyData As New DataTable
Dim Sql As String

Private Sub TimerLogin_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerLogin.Tick

Dim conn As MySqlConnection
conn = New MySqlConnection

conn.ConnectionString = [Ô]Server = localhost; User Id = Administrador; Password = 25041966; Database = teste_siscom[Ô]
Sql = [Ô]Select * From teste_siscom.tblusuario[Ô]

Try
conn.Open()
Try
MyCommand.Connection = conn
MyCommand.CommandText = Sql
MyAdapter.SelectCommand = MyCommand
MyAdapter.Fill(MyData)


Catch myerro As MySqlException
MsgBox([Ô]Erro de Leitura no Banco de Dados:[Ô] & myerro.Message)
End Try
MessageBox.Show([Ô]Conexão Aberta Com Sucesso[Ô])
conn.Close()

Catch myerro As MySqlException
MessageBox.Show([Ô]Erro ao Conectar com o Banco de Dados:[Ô] & myerro.Message)
Finally
conn.Dispose()
End Try

lblData.Text = DateAndTime.Now.ToLongDateString
lblDataHora.Text = DateTime.Now.ToLongTimeString
End Sub



Desde ja agradeço.
ALEVALE 18/06/2013 19:22:17
#424954
Citação:

Sql = [Ô]Select * From teste_siscom.tblusuario[Ô]



Está correto isso ? Qual o nome da sua tabela ?
OMAR2011 18/06/2013 19:53:42
#424956
Olhar Samuel,não estou conseguindo acreditar em você.

Veja, Sql = [Ô]Select * From [txt-color=#e80000]teste_siscom[/txt-color].[txt-color=#007100]tblusuario[/txt-color][Ô]

teste_siscom, isto é seu Banco de Dados
tblusuario, é sua tabela.
Não abre Tabela com Banco de Dados.Fiz um teste aqui e deu erro.
Olha o poste de [txt-color=#0000f0]ALEVALE[/txt-color]
Nunca fiz isto e não acredito que os demais participantes do fórum fez.
Retirando o erro gerado a conexão foi feita de forma normal e a mensagem
apareceu somente uma vez.é seu código acima.
ALTAIR148 19/06/2013 08:43:14
#424967
Resposta escolhida
Bom dia,

Samuel, isso que você está fazendo é meio que loucura. Vamos lá.

1° Por qual motivo colocou essa rotina dentro de um timer? Se fizer isso amigo, dependendo do intervalo que tem esse timer, vai matar o seu sistema, vai ficar uma [Ô]carroça[Ô] sua rede.

2° Se a rotina mostra uma msgbox como [Ô]Conexão aberta[Ô], claro que vai ficar aparecendo uma atrás da outra, ou seja, cada vez que o timer rodar vai abrir a mensagem.

3° Tem que trazer mesmo todos os registros da tabela?

4° Procure na internet como usar uma classe para conexão, vamos pensar no seguinte cenário:

Seu sistema terá 10 formulários com 10 rotinas cada, ou seja, serão 100 rotinas que utilizam o banco de dados, em cada rotina você está colocando a string de conexão(caminho do banco, senha do banco, usuário...), daí você chega em um cliente e precisa mudar o endereço do banco ou quer mudar a senha? Teria que sair mudando em todas as rotinas, já concentrando tudo isso em uma classe, basta mudar na classe e pronto, todo o projeto passa a pegar as informações dessa classe.

Reveja isso aí e veja se realmente tem necessidade de colocar isso dentro do timer.

SAMUELRIBEIRO 19/06/2013 09:26:28
#424969
Bom dia Senhores.

Primeiro muito Obrigado pela atenção. O nome de banco de dados eu uso só para testes, o original eu deixo mais para distribuição, como eu disse este é só para testes. A tabela é esta mesmo tbtusuario,
O que tem de errado no nome?

Altair148 já ouvi muito falar muito na classe de conexão, ja até tentei fazer deste modo, mas ainda não consegui.
Você teria algum material referente a classes?

Desde já agradeço?
ALTAIR148 19/06/2013 11:14:38
#424973
Bom dia,

Em anexo segue um exemplo, mas lembrando que é um exemplo básico e que precisa ser adaptado a sua necessidade, é só para ter uma noção mesmo de como que é.
Tópico encerrado , respostas não são mais permitidas