BOTA PROCURAR
Private Sub Form_Load()
conecta
End Sub
Já fiz isso !
Private Sub Form_Load()
conecta
End Sub
Não deu certo!
Private Sub Form_Load()
conecta
End Sub
Não deu certo!
Marcelo, não deu certo !!!
Essa query não executa o comando ( cn.execute SQL )
Private Sub cmdProcurar_Click(Index As Integer)
If txtNome2 = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]select * from aluno where nome like [ô][Ô] & txtNome2.Text & [Ô]%[ô][Ô]
cn.Execute SQL
adoConsAluno.Refresh
End Sub
Essa query não executa o comando ( cn.execute SQL )
Private Sub cmdProcurar_Click(Index As Integer)
If txtNome2 = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]select * from aluno where nome like [ô][Ô] & txtNome2.Text & [Ô]%[ô][Ô]
cn.Execute SQL
adoConsAluno.Refresh
End Sub
João vamos partir do principio, onde vc declara a conexão, é no mesmo form desta pesquisa?
pois o ideal seria fazer a conexão em um módulo, onde cn seria uma declaração global, porém o recordset, vc não precisa declarar em um módulo e sim so mente quando for utiliza-lo. vou elaborar um exemplo e logo postarei
pois o ideal seria fazer a conexão em um módulo, onde cn seria uma declaração global, porém o recordset, vc não precisa declarar em um módulo e sim so mente quando for utiliza-lo. vou elaborar um exemplo e logo postarei
Modulo de Conexão é separado de todos os Form.
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Public Sub conecta()
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])
cn.Open [Ô]Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=Banco;User=root;Password=123;Option=3;[Ô]
End Sub
Public Sub desconecta()
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Public Sub conecta()
Set cn = CreateObject([Ô]ADODB.Connection[Ô])
Set rs = CreateObject([Ô]ADODB.Recordset[Ô])
cn.Open [Ô]Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=Banco;User=root;Password=123;Option=3;[Ô]
End Sub
Public Sub desconecta()
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
então vamos fazer uma pequena alteração, primeiro cole em um módulo o seguinte código
repare que não declarei o recordset, isto porque basta vc declara-lo somente quando for usar assim se por acaso precisar de mais de um recordset não tera'problema, resumindo
onde for usar o Recordset
Dim RS As recordset
agora as formas de uso,
para consultas basta setar o recordset, ex:
para inclusão alteração e exclusão ja não ha a necessidade de se ter um recordset, podendo fazer direto
espero que da maneira acima seus problemas se resolvam
Global CN As New ADODB.Connection
Public Sub conecta()
[ô] o if abaixo serve para verificar se a conexão esta aberta e se estiver ele a
[ô] fecha para evitar erros, isto é para o caso de vc esquecer de fechar a conexão em algum momento
If CN.State = 1 Then
CN.Close
Set CN = Nothing
End If
CN.Open [Ô]Driver={MySQL ODBC 5.1 Driver};Server=localhost;Database=Banco;User=root;Password=123;Option=3;[Ô]
End Sub
Public Sub desconecta()
rs.Close
CN.Close
Set rs = Nothing
Set CN = Nothing
End Sub
repare que não declarei o recordset, isto porque basta vc declara-lo somente quando for usar assim se por acaso precisar de mais de um recordset não tera'problema, resumindo
onde for usar o Recordset
Dim RS As recordset
agora as formas de uso,
para consultas basta setar o recordset, ex:
sSQL = [Ô]SELECT * FROM tabela WHERE campo =[ô][Ô] & seucampo.txt & [Ô][ô][Ô]
Set RS = CN.Execute(sSQL)
para inclusão alteração e exclusão ja não ha a necessidade de se ter um recordset, podendo fazer direto
[ô] alteração
CN.Execute [Ô]UPDATE tabela SET campo2 = [ô]valor2[ô], campo3 = [ô]valor3[ô] WHERE campo1 = [ô]1[ô][Ô]
[ô] inclusão
CN.Execute [Ô]INSERT INTO tabela (campo1,campo2,campo3) values ([ô]valor1[ô],[ô]valor2[ô],[ô]valor3[ô])[Ô]
[ô] exclusão
CN.Execute [Ô]DELETE FROM tabela WHERE campo1 = [ô]1[ô][Ô]
espero que da maneira acima seus problemas se resolvam
Não deu Certo !!!
O código todo do Formulário.
Public SQL As String
Private Sub cboSexo_DropDown()
cboSexo.Clear
cboSexo.AddItem [Ô]MASCULINO[Ô]
cboSexo.AddItem [Ô]FEMININO[Ô]
End Sub
Private Sub cboStatus_DropDown()
cboStatus.Clear
cboStatus.AddItem [Ô]ATIVO[Ô]
cboStatus.AddItem [Ô]INATIVO[Ô]
End Sub
Private Sub cmdAlterar_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]UPDATE aluno SET Nome = [ô][Ô] & txtNome & [Ô][ô],sexo = [ô][Ô] & cboSexo & [Ô][ô],Nascimento = [ô][Ô] & mskData & [Ô][ô],Telefone =[ô][Ô] & mskTelefone & [Ô][ô],Situação =[ô][Ô] & cboStatus & [Ô][ô],Endereço =[ô][Ô] & txtEndereco & [Ô][ô],Bairro = [ô][Ô] & txtBairro & [Ô][ô],Cidade = [ô][Ô] & txtCidade & [Ô][ô] Where Nome = [ô][Ô] & txtNome & [Ô][ô][Ô]
cn.Execute SQL
MsgBox [Ô]Cadastro atualizado com Sucesso![Ô], vbInformation, [Ô]Atualizar[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
txtNome.SetFocus
End Sub
Private Sub cmdDelete_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]delete from aluno where Nome = [ô][Ô] & txtNome & [Ô][ô][Ô]
cn.Execute SQL
MsgBox [Ô]Cadastro deletado com Sucesso![Ô], vbInformation, [Ô]Excluir[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
txtNome.SetFocus
desconecta
End Sub
Private Sub cmdFechar_Click(Index As Integer)
Unload Me
End Sub
Private Sub cmdFechar2_Click()
Unload Me
End Sub
Private Sub cmdSalvar_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
If mskData = [Ô]__/__/____[Ô] Then
MsgBox [Ô]Favor informar a Data de Nascimento![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
mskData.SetFocus
Exit Sub
End If
If cboSexo.ListIndex = -1 Then
MsgBox [Ô]Favor informar o Sexo do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
cboSexo.SetFocus
Exit Sub
End If
If cboStatus.ListIndex = -1 Then
MsgBox [Ô]Favor informar o Status do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
cboStatus.SetFocus
Exit Sub
End If
If txtEndereco = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Endereço![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtEndereco.SetFocus
Exit Sub
End If
If txtBairro = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Bairro![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtBairro.SetFocus
Exit Sub
End If
If txtCidade = [Ô][Ô] Then
MsgBox [Ô]Favor informar a Cidade![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtCidade.SetFocus
Exit Sub
End If
If mskTelefone.Text = [Ô](__)____-____[Ô] Then
MsgBox [Ô]Favor informar o Telefone![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
mskTelefone.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]select * from Aluno[Ô]
rs.Open SQL, cn, 3, 3
rs.AddNew
rs([Ô]Nome[Ô]) = UCase(txtNome)
rs([Ô]Nascimento[Ô]) = mskData
rs([Ô]Sexo[Ô]) = cboSexo
rs([Ô]Situação[Ô]) = cboStatus
rs([Ô]Endereço[Ô]) = UCase(txtEndereco)
rs([Ô]Bairro[Ô]) = UCase(txtBairro)
rs([Ô]Cidade[Ô]) = UCase(txtCidade)
rs([Ô]Telefone[Ô]) = mskTelefone
rs.Update
MsgBox [Ô]Cadastro Efetuado com Sucesso!!![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
End Sub
Private Sub cmdProcurar_Click(Index As Integer)
If txtNome2 = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
conecta
sSQL = [Ô]select * from aluno where nome like [ô][Ô] & txtNome2.Text & [Ô]%[ô][Ô]
Set rs = cn.Execute(sSQL)
datgConAluno.Refresh
End Sub
Private Sub Form_Load()
conecta
cboStatus = [Ô]ATIVO[Ô]
frmAluno.Height = 11205
frmAluno.Width = 16050
End Sub
Public SQL As String
Private Sub cboSexo_DropDown()
cboSexo.Clear
cboSexo.AddItem [Ô]MASCULINO[Ô]
cboSexo.AddItem [Ô]FEMININO[Ô]
End Sub
Private Sub cboStatus_DropDown()
cboStatus.Clear
cboStatus.AddItem [Ô]ATIVO[Ô]
cboStatus.AddItem [Ô]INATIVO[Ô]
End Sub
Private Sub cmdAlterar_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]UPDATE aluno SET Nome = [ô][Ô] & txtNome & [Ô][ô],sexo = [ô][Ô] & cboSexo & [Ô][ô],Nascimento = [ô][Ô] & mskData & [Ô][ô],Telefone =[ô][Ô] & mskTelefone & [Ô][ô],Situação =[ô][Ô] & cboStatus & [Ô][ô],Endereço =[ô][Ô] & txtEndereco & [Ô][ô],Bairro = [ô][Ô] & txtBairro & [Ô][ô],Cidade = [ô][Ô] & txtCidade & [Ô][ô] Where Nome = [ô][Ô] & txtNome & [Ô][ô][Ô]
cn.Execute SQL
MsgBox [Ô]Cadastro atualizado com Sucesso![Ô], vbInformation, [Ô]Atualizar[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
txtNome.SetFocus
End Sub
Private Sub cmdDelete_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]delete from aluno where Nome = [ô][Ô] & txtNome & [Ô][ô][Ô]
cn.Execute SQL
MsgBox [Ô]Cadastro deletado com Sucesso![Ô], vbInformation, [Ô]Excluir[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
txtNome.SetFocus
desconecta
End Sub
Private Sub cmdFechar_Click(Index As Integer)
Unload Me
End Sub
Private Sub cmdFechar2_Click()
Unload Me
End Sub
Private Sub cmdSalvar_Click(Index As Integer)
If txtNome = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome.SetFocus
Exit Sub
End If
If mskData = [Ô]__/__/____[Ô] Then
MsgBox [Ô]Favor informar a Data de Nascimento![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
mskData.SetFocus
Exit Sub
End If
If cboSexo.ListIndex = -1 Then
MsgBox [Ô]Favor informar o Sexo do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
cboSexo.SetFocus
Exit Sub
End If
If cboStatus.ListIndex = -1 Then
MsgBox [Ô]Favor informar o Status do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
cboStatus.SetFocus
Exit Sub
End If
If txtEndereco = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Endereço![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtEndereco.SetFocus
Exit Sub
End If
If txtBairro = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Bairro![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtBairro.SetFocus
Exit Sub
End If
If txtCidade = [Ô][Ô] Then
MsgBox [Ô]Favor informar a Cidade![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtCidade.SetFocus
Exit Sub
End If
If mskTelefone.Text = [Ô](__)____-____[Ô] Then
MsgBox [Ô]Favor informar o Telefone![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
mskTelefone.SetFocus
Exit Sub
End If
conecta
SQL = [Ô]select * from Aluno[Ô]
rs.Open SQL, cn, 3, 3
rs.AddNew
rs([Ô]Nome[Ô]) = UCase(txtNome)
rs([Ô]Nascimento[Ô]) = mskData
rs([Ô]Sexo[Ô]) = cboSexo
rs([Ô]Situação[Ô]) = cboStatus
rs([Ô]Endereço[Ô]) = UCase(txtEndereco)
rs([Ô]Bairro[Ô]) = UCase(txtBairro)
rs([Ô]Cidade[Ô]) = UCase(txtCidade)
rs([Ô]Telefone[Ô]) = mskTelefone
rs.Update
MsgBox [Ô]Cadastro Efetuado com Sucesso!!![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome = [Ô][Ô]
cboSexo.ListIndex = -1
mskData = [Ô]__/__/____[Ô]
cboStatus.ListIndex = -1
txtEndereco = [Ô][Ô]
txtBairro = [Ô][Ô]
txtCidade = [Ô][Ô]
mskTelefone.Text = [Ô](__)____-____[Ô]
adoAluno.Refresh
End Sub
Private Sub cmdProcurar_Click(Index As Integer)
If txtNome2 = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
conecta
sSQL = [Ô]select * from aluno where nome like [ô][Ô] & txtNome2.Text & [Ô]%[ô][Ô]
Set rs = cn.Execute(sSQL)
datgConAluno.Refresh
End Sub
Private Sub Form_Load()
conecta
cboStatus = [Ô]ATIVO[Ô]
frmAluno.Height = 11205
frmAluno.Width = 16050
End Sub
If txtNome2.text = [Ô][Ô] Then
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
SQL = [Ô]select * from Aluno where Nome like [ô][Ô] & txtNome2.text & [Ô]%[ô][Ô]
cn.Execute SQL
separe o asterisco no select e acrescente .text na passagem de parametro da query.
MsgBox [Ô]Favor informar o Nome do Aluno![Ô], vbInformation, [Ô]Escola Caminho Suave[Ô]
txtNome2.SetFocus
Exit Sub
End If
SQL = [Ô]select * from Aluno where Nome like [ô][Ô] & txtNome2.text & [Ô]%[ô][Ô]
cn.Execute SQL
separe o asterisco no select e acrescente .text na passagem de parametro da query.
Tiago,
Não deu certo !!!
Não deu certo !!!
Tópico encerrado , respostas não são mais permitidas