ATUALIZAR
Olá pessoal.
Eu tenho um banco de dados que c atualiza sempre que seu registro tiver datas antigas, eu uso este codigo:
Private Sub btnRemove_Click()
Dim local as String
Dim con as ADODB.Connection
local = "c:\banco.mdb" 'Este é o local do banco .MDB
set con = new ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & local & ";Persist Security Info=False"
con.execute "DELETE FROM Teste WHERE Data < #" & (Now - 31) & "#"
set con = nothing
End sub
Mais este codigo ele apaga o registro inteiro e c eu quiser que ele apenas apageu alguns campos tipo campo da idade e o do estdo civil como eu poderia fazer:
Desde ja agradeço. T+
Eu tenho um banco de dados que c atualiza sempre que seu registro tiver datas antigas, eu uso este codigo:
Private Sub btnRemove_Click()
Dim local as String
Dim con as ADODB.Connection
local = "c:\banco.mdb" 'Este é o local do banco .MDB
set con = new ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & local & ";Persist Security Info=False"
con.execute "DELETE FROM Teste WHERE Data < #" & (Now - 31) & "#"
set con = nothing
End sub
Mais este codigo ele apaga o registro inteiro e c eu quiser que ele apenas apageu alguns campos tipo campo da idade e o do estdo civil como eu poderia fazer:
Desde ja agradeço. T+
Apenas altere o sql para o abaixo...
Private Sub btnRemove_Click()
Dim local as String
Dim con as ADODB.Connection
local = "c:\banco.mdb" 'Este é o local do banco .MDB
set con = new ADODB.Connection
con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & local & ";Persist Security Info=False"
con.execute "UPDATE FROM Teste SET [IDADE]='', [ESTADO_CIVIL]='' WHERE Data < #" & (Now - 31) & "#"
set con = nothing
End sub
OI SIBEM neste codigo ele da erro de sintaxe:
Run-time error '-2147217900 (80040e14)':
Erro de sintaxe na instrução UPDATE
Na linha:
con.Execute "UPDATE FROM Banco_Dados SET [IDADE]='NULL' WHERE Data < #" & (Now - 31) & "#"
vc sabe o q pode ser:
Run-time error '-2147217900 (80040e14)':
Erro de sintaxe na instrução UPDATE
Na linha:
con.Execute "UPDATE FROM Banco_Dados SET [IDADE]='NULL' WHERE Data < #" & (Now - 31) & "#"
vc sabe o q pode ser:
Pode ser um desses erros, tente o seguinte:
1) - tente sem as []
2) - NULL é diferente de 'NULL'
Ja que a constante NULL equivale a nulo em todos os campos e 'NULL' é uma string
3) - Verifique se os campos texto permitem valores nulos. Veja, no access, as propriedades do campo no modo estrutura, veja se a propriedade "Permitir comprimento zero" esta valorada com "sim"
4) - Você pode estar fazendo mistura de tipos.
Se seu campo é numerico, vc não deve seta-lo com '' (apostrofos vazios) e sim com 0 (zero)
Exemplos de setagem para tipos de campo:
TIPO SETAGEM
Texto campo='' (apostrofos fazios)
Númerico campo=0 (zero)
Data campo=#//#
Sim/Não campo=False
Memorando o mesmo que o Texto
1) - tente sem as []
2) - NULL é diferente de 'NULL'
Ja que a constante NULL equivale a nulo em todos os campos e 'NULL' é uma string
3) - Verifique se os campos texto permitem valores nulos. Veja, no access, as propriedades do campo no modo estrutura, veja se a propriedade "Permitir comprimento zero" esta valorada com "sim"
4) - Você pode estar fazendo mistura de tipos.
Se seu campo é numerico, vc não deve seta-lo com '' (apostrofos vazios) e sim com 0 (zero)
Exemplos de setagem para tipos de campo:
TIPO SETAGEM
Texto campo='' (apostrofos fazios)
Númerico campo=0 (zero)
Data campo=#//#
Sim/Não campo=False
Memorando o mesmo que o Texto
Caro Hailton.
Tentei os codigos mas não deu certo será que tem outro geito de fazer isto!!!
Desde ja agradeço
Tentei os codigos mas não deu certo será que tem outro geito de fazer isto!!!
Desde ja agradeço
BOM TENTA ASSIM
C ESCLUIR
CON.EXECUTE "DELETE FROM Teste WHERE Data <= #" & DATEADD("d",-31,DATE) & "#"
C ALTERAR CAMPO
CON.EXECUTE "UPDATE Teste SET CAMPO1=NULL,CAMPO2=NULL WHERE Data <= #" & DATEADD("d",-31,DATE) & "#"
ESPERO TER AJUDADO
C ESCLUIR
CON.EXECUTE "DELETE FROM Teste WHERE Data <= #" & DATEADD("d",-31,DATE) & "#"
C ALTERAR CAMPO
CON.EXECUTE "UPDATE Teste SET CAMPO1=NULL,CAMPO2=NULL WHERE Data <= #" & DATEADD("d",-31,DATE) & "#"
ESPERO TER AJUDADO
Faleu galera deu tudo certo.
Brigaduuuuu a todos Valeu mesmo.
Abraços t+
Brigaduuuuu a todos Valeu mesmo.
Abraços t+
Tópico encerrado , respostas não são mais permitidas