COMO FACO UMA CONSULTA EM SQL E EM ADO ?

PATRICIALINDA 04/09/2011 19:29:32
#383355
Meus amigos,

Quando eu utilizava o ADO com Access 97, fazia consultas no banco de dados assim...



Set TabProd = BD.OpenRecordset([Ô]Produto[Ô], dbOpenTable)

TabProd.Index = [Ô]IndCodProd[Ô]
TabProd.Seek [Ô]=[Ô], TxtComputador.Text

If Not TabProd.NoMatch Then [ô]SE ENCONTROU...
Call MsgBox([Ô]Código já cadastrado, favor redigite ou cadastre um novo.[Ô], vbCritical, [Ô]>>> CÓDIGO DUPLICADO <<[Ô])
TxtComputador.Text = [Ô][Ô]
TxtComputador.SetFocus
Exit Sub
End If



Agora estou utilizando o Access 2010 eu me conecto normal assim...


        Provider = [Ô]Provider=Microsoft.Jet.OLEDB.4.0;[Ô]
DataS = [Ô]Data Source=[Ô] & App.Path & [Ô]\DATABASE\CONTROLE.mdb;[Ô]
PeTabBDist = [Ô]Jet OLEDB:database Password=inventario[Ô]
s = Provider & DataS & PeTabBDist
Set ConexaoBD = New ADODB.Connection
ConexaoBD.Open s


Set TabBD = New ADODB.Recordset

SQL = [Ô]Select CodPatrDesk From TaDesktop[Ô]
TabBD.Open SQL, ConexaoBD


Minha dúvida é como realizo a mesma forma de consulta com e sem a utilização de comandos SQL ?
Como podemos ver no primeiro exemplo, não utilizo comandos SQL, como faço agora na nova estrutura de conexão ?
EDERMIR 04/09/2011 20:42:58
#383357
Resposta escolhida
Você quer saber exatamente o que?

Espero que a sua dúvida seja como realizar a pesquisa com comandos SQL.

Pode ser assim:
SQL = [Ô]Select CodPatrDesk From TaDesktop where CAMPO = [ô][Ô] & TxtComputador.Text & [Ô][ô][Ô] (UTILIZE ASPAS SIMPLES PARA CAMPOS TEXTO OU DATA)
TabBD.Open SQL, ConexaoBD
if tabbd.eof = false then
Call MsgBox([Ô]Código já cadastrado, favor redigite ou cadastre um novo.[Ô], vbCritical, [Ô]>>> CÓDIGO DUPLICADO <<[Ô])
TxtComputador.Text = [Ô][Ô]
TxtComputador.SetFocus
endif

ou

SQL = [Ô]Select CodPatrDesk From TaDesktop[Ô]
TabBD.Open SQL, ConexaoBD
do while tabbd.eof = false
if tabbd!CAMPO = txtcomputador.text then
Call MsgBox([Ô]Código já cadastrado, favor redigite ou cadastre um novo.[Ô], vbCritical, [Ô]>>> CÓDIGO DUPLICADO <<[Ô])
TxtComputador.Text = [Ô][Ô]
TxtComputador.SetFocus
exit do
endif
tabbd.movenext
loop

Eu prefiro a primeira maneira para o seu caso.
PATRICIALINDA 05/09/2011 22:36:04
#383479
Citação:

:
Você quer saber exatamente o que?

Espero que a sua dúvida seja como realizar a pesquisa com comandos SQL.

Pode ser assim:
SQL = [Ô]Select CodPatrDesk From TaDesktop where CAMPO = [ô][Ô] & TxtComputador.Text & [Ô][ô][Ô] (UTILIZE ASPAS SIMPLES PARA CAMPOS TEXTO OU DATA)
TabBD.Open SQL, ConexaoBD
if tabbd.eof = false then
Call MsgBox([Ô]Código já cadastrado, favor redigite ou cadastre um novo.[Ô], vbCritical, [Ô]>>> CÓDIGO DUPLICADO <<[Ô])
TxtComputador.Text = [Ô][Ô]
TxtComputador.SetFocus
endif

ou

SQL = [Ô]Select CodPatrDesk From TaDesktop[Ô]
TabBD.Open SQL, ConexaoBD
do while tabbd.eof = false
if tabbd!CAMPO = txtcomputador.text then
Call MsgBox([Ô]Código já cadastrado, favor redigite ou cadastre um novo.[Ô], vbCritical, [Ô]>>> CÓDIGO DUPLICADO <<[Ô])
TxtComputador.Text = [Ô][Ô]
TxtComputador.SetFocus
exit do
endif
tabbd.movenext
loop

Eu prefiro a primeira maneira para o seu caso.



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