DUVIDA SOBRE MYSQL

CAIO.FR.SP 19/02/2010 16:16:43
#334819
O SGDB MYSQL é TOTALMENTE COMPATIVEL COM O VB6? E é GRATIS?
ADHEL 19/02/2010 16:35:12
#334822
Resposta escolhida
Caio boa tarde
Eu uso o mysql com vb6.
Gravo,altero,excluo faço consultas com os dados tranquilamente.
é grátis só que....

Sun paga US$ 1 bi e compra MySQL AB
Quarta-feira, 16 de janeiro de 2008 - 11h28
SÃO PAULO - A Sun Microsystems fechou acordo com a desenvolvedora sueca MySQL AB e vai adquirir a empresa.


O CEO da Sun, Jonathan Schwartz, concordou em pagar US$ 1 bilhão para controlar a companhia que desenvolve o banco de dados aberto mais popular do mundo.


O MySQL está instalado em mais de 10 milhões de máquinas no mundo e é utilizado pelo sistema de buscas do Google, no engine do Facebook e está presente, por exemplo, nos produtos da Nokia.


Com a compra, a Sun acredita que poderá usar sua força para aproximar o MySQL de um número maior de grandes corporações.

Vamos ver como vai ficar daqui p/ frente
CAIO.FR.SP 19/02/2010 16:39:36
#334825
entao, pq eu uso o acess, ja usei o firebird mais nao gostei muito, axei meio complicado, agora tava vendo uns artigos sobre mysql, mais qdo fui baixar ele no site fiquei em duvida se era pago.

ADHEL, voce poderia me ajudar com o inicio, tipo. a conexao com o db, as strings de inclusao, exclusao, alteração e consulta.
FUTURA 19/02/2010 16:45:47
#334827
cara, usa o sql server express 2005 ou 2008 ,, bom pra caramba e free
CAIO.FR.SP 19/02/2010 16:53:44
#334830
sql nao é limitado?
ADHEL 19/02/2010 17:09:22
#334832
Caio sou novato em vb6.
Mas o que eu souber com certeza vou te ajudar(Na verdade as vezes de noite que tenho tempo para estudar.
Aqui no site o pessoal é fera e eles ajudam muito.Sempre que tenho dúvidas o pessoal me ajuda.

Vou postar um ótimo tutorial que consegui na net.
Eu tenho QUASE CERTEZA que é da autoria do nosso amigo MARCELO_TREZE.
Nesse tutorial ele ensina a conectar o banco, inserir,consultar e excluir

Não entendi direito sua pergunta, mas vamos ver se é isto você gostaria de conectar o VB6 a um Banco de dados MySQL, seria isto?

bom se for então primeiro você precisa Baixar o MySQL 5.0 ou 5.1, e tambem baixar o ODBC Driver 3.51 no caso do Mysql 5.0 e o ODBC driver 5.1 no caso de ser o MySQL 5.1

feito isto no VB6 você vai em references / Microsoft ActiveX 2.X Object Library.

e Fara a conexão com a Seguinte String

coloque um módulo em seu projeto e cole o seguinte

Public Conexao As New ADODB.Connection

Public Function Conecta(ByVal Valor As Boolean)
Dim CON_STR As String
Dim SERVER As String
Dim USER As String
Dim SENHA As String
Dim PORTA As String
Dim BD As String
[ô]verifica se a conexao está aberta e fecha para evitar erros
If Conexao.State = 1 Then
Conexao.Close
Set Conexao = Nothing
Valor = True
End If
If Valor = True Then
SERVER = [Ô]localhost[Ô]
BD = [Ô]nome_do_banco_de_dados[Ô]
PORTA = [Ô]3306[Ô]
USER = [Ô]root[Ô]
SENHA = [Ô]Senha_do_Banco[Ô]
CON_STR = [Ô]DRIVER={MySQL ODBC 3.51 DRIVER};[Ô] _
& [Ô]Server=[Ô] & SERVER & [Ô];[Ô] _
& [Ô]Port=[Ô] & PORTA & [Ô];[Ô] _
& [Ô]Database=[Ô] & BD & [Ô];[Ô] _
& [Ô]UID=[Ô] & USER & [Ô];[Ô] _
& [Ô]PWD=[Ô] & SENHA & [Ô];[Ô] _
& [Ô]Option=3;[Ô]
With Conexao
.CursorLocation = adUseClient
.ConnectionString = CON_STR
.Open CON_STR
End With
Else
Conexao.Close
Set Conexao = Nothing
End If
End Function


Lembrando que a função acima eu criei para facilitar a conexão.

então vamos ao Proximo Passo.

* Como usar a função Conecta

No Load do Form Principal Coloque

Private Sub Form_Load()
Conecta True [ô]Abre a Conexão com o Banco de dados
End Sub

e No UnLoad coloque

Private Sub Form_Unload(Cancel As Integer)
Conecta False [ô]Fecha a Conexão com o banco
End Sub

Bom agora para Fazer consulta basta ser desta forma

alguns gostam de declarar os recordsets no módulo, porém particularmente prefiro declara-lo somente na funçao que irei usar, assim eu poupo trabalho de ficar criando varias recordset.

entào por exemplo se eu precisar fazer um botão de consulta seria assim

Private Sub BtnConsulta_Click()
Dim RS As RecordSet
Dim mSQL As String
mSQL = [Ô]Select * From Tabela Where idade = [ô][Ô] & txtCampo.Text & [Ô][ô][Ô]
Set RS = Conexao.Execute(SQL)
Do While Not RS.EOF
ListResut.Additem RS!Nome& [Ô] - [Ô] & RS!Idade
RS.MoveNext
Loop
End Sub

Acima fiz uma consulta simples que exibe varios resultados em um listbox (ListResult) todos com uma idade X que determino do Textbox (txtCampo).

o resultado será este

João - 36
Pedro - 47
Joaquim - 28

agora se a consulta for retornar apenas um list box vc terá de faze-lo desta forma

Private Sub BtnConsulta_Click()
Dim RS As RecordSet
Dim mSQL As String
mSQL = [Ô]Select * From Tabela Where Nome = [ô][Ô] & txtCampo.Text & [Ô][ô][Ô]
Set RS = Conexao.Execute(SQL)
If Not RS.EOF Then [ô]EOF é o fim do registro,
[ô]então se não chegar ao fim os dados existem
lblNome.Caption = RS!Nome
lblIdade.Caption = RS!Idade
Else [ô]caso contrário exibe a mensagem
Msgbox [Ô]O Nome pesquisado não existe![Ô]
End If
End Sub

Ensinei a consultar agora vou explicar como alterar inserir e excluir

Primeiro como incluir dados no Bnaco

Para incluir dados no banco não há necessidade de se declarar um recordset isto pode ser feito diretamente.

ex:

Conexao.Execute ([Ô]Insert Into tabela (campo1,campo2,campo3) values ([ô]valor1[ô], [ô]valor2[ô], [ô]valor3[ô])[Ô])

para alteracao

Conexao.Execute ([Ô]Update Tabela Set Campo1 = [ô]novovalor1[ô], Campo2 = [ô]Novovalor2[ô], campo3 = [ô]novovalor3[ô] Where Campo1 = [ô]valorantigo1[ô][Ô])

e pro fim para exclusão

Conexao.Execute ([Ô]Delete From tabela Where Campo1=[ô]indice_a_ser_excluido[ô][Ô])

e pronto vc já pode começara programar vb6 com MySQL

até



MARCELO.TREZE 19/02/2010 19:57:45
#334847
Primeiramente, fico feliz de ter ajudado com esta pequena dica de uso do MySQL apresentada pelo colega ADHEL, ela funciona bem.

mas vim aqui apenas pra esclarecer a duvida do colega CAIO quanto ao MySQL ser pago ou não, depois de muito pesquisar entendi como funciona.

o MySQL se for distribuido com sistemas free ou OpenSource é gratuito, agora se você for comercializar o seu software deverá adquirir uma licensa pra cada máquina em que for instalar o seu software.

espero ter ajudado.

CAIO.FR.SP 19/02/2010 20:14:55
#334849
pelo que vi aqui, para as strings de inclusao, exclusao, alteração e consulta são as mesmas que uso com o acess, apenas a conexao tem algumas mudanças! é isso mesmo?
MARCELO.TREZE 19/02/2010 20:28:20
#334852
Exatamente, as strings são praticamente as mesmas, a unica coisa qwue vc deverá prestar atenção é quanto ao tratamento:

por exemplo no access você tem de tratar textos, numeros e datas de formas diferentes.

que seria assim

para texto usar aspas simples ex: nome = [ô]marcelo[ô]
para numero sem aspas ex: cod = 1234
e para data tinha de usar a seguinte formatação ex: data = #mm/dd/yyyy#

no MySQL tudo deve ser tratado entre aspas simples e a data é formatada de forma diferente

ex:

texto: nome = [ô]marcelo[ô]
numero: cod = [ô]1234[ô]
data: data = [ô]YYYY-MM-DD[ô]

reparou a diferença apenas se atente a isso e tudo dará certo

Tópico encerrado , respostas não são mais permitidas