ATUALIZA CAMPO NO BD ACCESS

LINKSOFT 05/01/2012 21:09:03
#392511
Boa noite, pessoa.
To precisando o seguinte.
tenho um campo na tblItens que sempre fica null, tenho um form que sempre adiciona itens a essa tabela, add to véz que gero um nova partida 40 registros, e tem um campo que sempre fica nulo nessa tabela, gostaria de pegar um campo do meu formulario e atualiza esses campos de uma vez, com o codigo do formulario.
como faço isso, alguém me ajuda.
FORMIGINHA 05/01/2012 21:41:48
#392512
faz um update na sua tabela toda, setando o valor que voce quer atribuir ao campo... EX:

Tabela Itens...
Cód Nome Valor Ativo
1 Teste1 1,00 Null
2 Teste2 2,00 Null
3 Teste3 3,00 Null

ai vc quer atualizar a coluna ativo para [ô]S[ô]

o update fica assim

uptate tabela_itens set ativo=[ô]S[ô];

executa e ve a tabela... vai estar preenchido com o valor [ô]S[ô]

t+
LINKSOFT 05/01/2012 21:46:09
#392513
Cara não consegui, to tentando fazer assim.

Dim Atualiza As New ADODB.Recordset
Atualiza.Open [Ô]Select * from tblItensPartida where IdPartida like[ô][Ô] & Null & [Ô][ô][Ô], con, adOpenDynamic, adLockPessimistic

If Atualiza.EOF Then
Else
Atualiza.Update
Atualiza!IdPartida = txtIdPartida.Text & [Ô][Ô]
Atualiza.Update
End If
FORMIGINHA 05/01/2012 21:58:00
#392514
mas onde esta o Loop para atualizar todos os campos ?

a Sintax para vc colocar no VB é nessa estrutura:

1 - Select para localizar todos os itens q vc vai atualizar
2 - Fazer um loop para atualizar todos do select
3 - E colocar em modo edit antes do update, ex:
Do While Not atualiza.eof then
atualiza.edit
atualiza!seu campo = seutxt.text
atualiza.update
end while

a sintax não sei exatamente em VB, pq programo em Delphi.. mas é bem parecido..

t+
LINKSOFT 05/01/2012 23:01:17
#392515
continua sem da certo.
FEDERHEN 06/01/2012 08:15:38
#392525
Citação:

Atualiza.Open [Ô]Select * from tblItensPartida where IdPartida like[ô][Ô] & Null & [Ô][ô][Ô], con, adOpenDynamic, adLockPessimistic

If Atualiza.EOF Then
Else
Atualiza.Update
Atualiza!IdPartida = txtIdPartida.Text & [Ô][Ô]



Acho que este select não funciona por causa das aspas simples antes e depois do null.

---

Tenta isso:

con.exe [Ô]Update tblItensPartida Set IdPartida = [ô]S[ô] Where IdPartida is Null[Ô]
ASHKATCHUP 06/01/2012 09:17:24
#392531
Resposta escolhida
Select * 
from tblItensPartida
where IdPartida is null
FILMAN 06/01/2012 15:15:59
#392569
Conforme o nosso amigo

FORMIGINHA Disse:
Citação:

faz um update na sua tabela toda, setando o valor que voce quer atribuir ao campo... EX:

Tabela Itens...
Cód Nome Valor Ativo
1 Teste1 1,00 Null
2 Teste2 2,00 Null
3 Teste3 3,00 Null

ai vc quer atualizar a coluna ativo para [ô]S[ô]

o update fica assim

uptate tabela_itens set ativo=[ô]S[ô];

executa e ve a tabela... vai estar preenchido com o valor [ô]S[ô]

t+



Faça assim crie uma função que percorrerá a tabela inteira e atualizando o campo nulo

Public Function Altera() As Boolean
Dim Atualiza As New ADODB.RecordSet
Dim i as Integer

On Erro Goto Falha_Alteracao

Altera = True
i = 1

Atualiza.Open [Ô]SELECT * FROM tblItensPartida[Ô], con, adOpenDynamic, adLockPessimistic

Do While Not Atualiza.EOF
If IsNull(Atualiza!idPartida) Then
Atualiza!IdPartida = i
i = i + 1
End If
Loop

Falha_Alteracao:
Altera = False
Exit Function
End Function


Para Chamar é só fazer assim

Private Sub cmdAltera_Click()
if Altera then
MsgBox [Ô]Sua Tabela foi alterada com sucesso[Ô], vbinformation
Else
MsgBox [Ô]Ocorreu um erro ao alterar a tabela[Ô], vbinformation
End If
End Sub


Espero ter ajudado
LINKSOFT 06/01/2012 17:33:16
#392578
Deu certo, Muito Obrigado.
Tópico encerrado , respostas não são mais permitidas