LOCALIZAR UM REGISTRO NO SQL 2000
Ola Pessoa
Gostaria de saber como localizo um registro na base de dados SQL 2000
na base acess eu uso essa rotina ai abaixo.
Mycon2.Open [Ô]PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] + DBName + [Ô];[Ô]
MyTable2.Open [Ô]Lancamento[Ô], Mycon2, adOpenKeyset, adLockOptimistic, adCmdTableDirect
MyTable2.Index = [Ô]Ficha[Ô]
MyTable2.Seek Array(vexercicio, vnumero, vtipo), adSeekFirstEQ
If MyTable2.EOF Then
MyTable2.AddNew
MyTable2([Ô]exercicio[Ô]) = vexercicio
MyTable2([Ô]numero[Ô]) = vnumero
MyTable2([Ô]tipo[Ô]) = vtipo
MyTable2([Ô]conta_c[Ô]) = vcontad
MyTable2([Ô]valor[Ô]) = vvalor
MyTable2.Update
Else
MyTable2([Ô]conta_c[Ô]) = vcontad
MyTable2([Ô]valor[Ô]) = vvalor
MyTable2.Update
End If
Como faria isso no SQL 2000
se alguem puder me ajuar eu agradeço
obrigado.
Gostaria de saber como localizo um registro na base de dados SQL 2000
na base acess eu uso essa rotina ai abaixo.
Mycon2.Open [Ô]PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=[Ô] + DBName + [Ô];[Ô]
MyTable2.Open [Ô]Lancamento[Ô], Mycon2, adOpenKeyset, adLockOptimistic, adCmdTableDirect
MyTable2.Index = [Ô]Ficha[Ô]
MyTable2.Seek Array(vexercicio, vnumero, vtipo), adSeekFirstEQ
If MyTable2.EOF Then
MyTable2.AddNew
MyTable2([Ô]exercicio[Ô]) = vexercicio
MyTable2([Ô]numero[Ô]) = vnumero
MyTable2([Ô]tipo[Ô]) = vtipo
MyTable2([Ô]conta_c[Ô]) = vcontad
MyTable2([Ô]valor[Ô]) = vvalor
MyTable2.Update
Else
MyTable2([Ô]conta_c[Ô]) = vcontad
MyTable2([Ô]valor[Ô]) = vvalor
MyTable2.Update
End If
Como faria isso no SQL 2000
se alguem puder me ajuar eu agradeço
obrigado.
dim v_rs as adodb.recordset
set v_rs= Mycon2.execute([Ô]select campo1, campo2, campo3 from tabela where campo1=valor1[Ô])
if v_rs.eof then
Mycon2.execute([Ô]insert into tabela (campo1, campo2, campo3) values (valor1, valor2, valor3)[Ô])
else
Mycon2.execute([Ô]update tabela set campo2=valor2, campo3=valor3 where campo1=valor1[Ô])
end if
a grosso modo seria isso.
set v_rs= Mycon2.execute([Ô]select campo1, campo2, campo3 from tabela where campo1=valor1[Ô])
if v_rs.eof then
Mycon2.execute([Ô]insert into tabela (campo1, campo2, campo3) values (valor1, valor2, valor3)[Ô])
else
Mycon2.execute([Ô]update tabela set campo2=valor2, campo3=valor3 where campo1=valor1[Ô])
end if
a grosso modo seria isso.
Qual é a ESTRUTURA da tabela em que se deseja efetuar a consulta?
Ou melhor, qual é o CAMPO a ser pesquisado?
Ou melhor, qual é o CAMPO a ser pesquisado?
eu tenho uma indice com o nome de Ficha na minha tabela
e quero buscar pelo indice.
e quero buscar pelo indice.
Então é só colocar o campo que vc procura na clausula where...
Citação:TECLA escreveu:
Qual é a ESTRUTURA da tabela em que se deseja efetuar a consulta?
Ou melhor, qual é o CAMPO a ser pesquisado?
[txt-size=2]?[/txt-size]
usar essa consulta eu sei,
eu gostaria de fazer a pequisa pelo indice criado no meu Banco de Dados
o indice como no exemplo abaixo do no banc de dados Acess
MyTable2.Index = [Ô]Ficha[Ô]
MyTable2.Seek Array(vexercicio, vnumero, vtipo), adSeekFirstEQ
If MyTable2.EOF Then
msgbox [Ô]NAO CADASTRADO[Ô]
Else
val1=iif(mytable2(10)<>[Ô][Ô],mytable2(10),0)
end if
Sera que alguem podia me ajudar
Obrigado
eu gostaria de fazer a pequisa pelo indice criado no meu Banco de Dados
o indice como no exemplo abaixo do no banc de dados Acess
MyTable2.Index = [Ô]Ficha[Ô]
MyTable2.Seek Array(vexercicio, vnumero, vtipo), adSeekFirstEQ
If MyTable2.EOF Then
msgbox [Ô]NAO CADASTRADO[Ô]
Else
val1=iif(mytable2(10)<>[Ô][Ô],mytable2(10),0)
end if
Sera que alguem podia me ajudar
Obrigado
Citação:JOSECPD escreveu:
usar essa consulta eu sei,
eu gostaria de fazer a pequisa pelo indice criado no meu Banco de Dados
o indice como no exemplo abaixo do no banc de dados Acess
MyTable2.Index = [Ô]Ficha[Ô]
MyTable2.Seek Array(vexercicio, vnumero, vtipo), adSeekFirstEQ
If MyTable2.EOF Then
msgbox [Ô]NAO CADASTRADO[Ô]
Else
val1=iif(mytable2(10)<>[Ô][Ô],mytable2(10),0)
end if
Sera que alguem podia me ajudar
Obrigado
Qual é a razão de vc querer fazer a pesquisa pelo Ãndice?
e que eu ja tenho o indice criado no meu banco de Dados e gostaria de saber como usar
no sql 2000.
no sql 2000.
Então voce poderá utilizar o Table Hint
através dos table hints podemos especificar que Ãndice queremos que o query do Sql Server utilize para uma determinada query, utilizando a cláusula index.
ex.: select * from tabela with (index=nome_do_indice)
para mais detalhes pesquise sobre o table hint no book online do sqlserver
através dos table hints podemos especificar que Ãndice queremos que o query do Sql Server utilize para uma determinada query, utilizando a cláusula index.
ex.: select * from tabela with (index=nome_do_indice)
para mais detalhes pesquise sobre o table hint no book online do sqlserver
Tópico encerrado , respostas não são mais permitidas