Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal!
Estou tentando fazer o seguinte, não sei se alguem já fez.
É uma rotina, mas não estou tendo cabeça para pensar e realizar, consegui já o código abaixo:
<%
'SESSION.LCID = 1046 'BR
SESSION.LCID = 1033 'EN
SERVER.SCRIPTTIMEOUT = 8000
CODE = "uid="&enc&";pwd="&enc&""
'BANCO1 = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & SERVER.MAPPATH("db/alteracoes.mdb")
BANCO1 = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; DBQ=C:\inetpub\wwwroot\rotina\db\alteracoes.mdb"
SET CONN1 = SERVER.CREATEOBJECT("ADODB.CONNECTION")
'CONN1.MODE = 3 'ADMODEREADWRITE
CONN1.Open BANCO1, CODE
'BANCO2 = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & SERVER.MAPPATH("db/database.mdb")
BANCO2 = "DRIVER={MICROSOFT ACCESS DRIVER (*.mdb)}; DBQ=C:\inetpub\wwwroot\rotina\db\database.mdb"
SET CONN2 = SERVER.CREATEOBJECT("ADODB.CONNECTION")
'CONN2.MODE = 3 'ADMODEREADWRITE
CONN2.Open BANCO2, CODE
%>
<style type="text/css">
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
background-color: #FFF;
}font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
color: #900;
}font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
color: #F90;
}text-decoration: none;
}text-decoration: none;
color: #CCC;
}text-decoration: none;
color: #900;
}text-decoration: none;
color: #F90;
}font-family: Arial, Helvetica, sans-serif;
}font-size: 14px;
color: #333;
}
#box {
margin: 0px;
padding: 15px 5px 5px;
float: left;
height: auto;
width: 100%;
border-style: none;
}
</style>
<title>Rotina de Atualização do Banco de Dados</title>
<body bgcolor="#FFFFFF" text="#990000" link="#333333" vlink="#CCCCCC" alink="#333333" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">' 3) Se encontrar, faz UPDATE somente nos campos NOMECLI e o CODCAT (Demais campos não precisam ser atualizados)
SET VERIFICA = SERVER.CREATEOBJECT("ADODB.CONNECTION") 'crio o objeto
SET VERIFICA = CONN2.EXECUTE("SELECT * FROM ADMIN_cadRC") 'seleciono os dados do banco database em admin_cadrc
DO WHILE NOT VERIFICA.EOF 'enquanto não
SET CONTROLA = CONN1.EXECUTE("SELECT * FROM clientes WHERE NOMECLI = '"& Replace(VERIFICA("NOMECLI"),"'","") &"'") 'verifica se tem no alteracoes
IF CONTROLA.EOF AND CONTROLA.BOF THEN 'caso não tem, insere o registro
GRAVA_CLIENTES = CONN2.Execute("INSERT INTO ADMIN_cadRC (CODCLI,CODMATRIZ,CODCAT,CPFCLI,CGCCLI,IECCLI,NOMECLI,EMAILCLI,LOGIN,SENHA) VALUES ('"&CONTROLA("CODCLI")&"','"&CONTROLA("CODMATRIZ")&"','"&CONTROLA("CODCAT")&"','"&CONTROLA("CPFCLI")&"','"&CONTROLA("CGCCLI")&"','"&CONTROLA("IECCLI")&"','"&CONTROLA("EMAILCLI")&"','"&CONTROLA("NOMECLI")&"','"&CONTROLA("LOGIN")&"','"&CONTROLA("SENHA")&"')")
'response.write "primeiro if, achou algum cliente novo"
response.write GRAVA_CLIENTES
response.End()
ELSE
UPDATE_CLIENTES = CONN2.Execute("UPDATE ADMIN_cadRC SET NOMECLI = '"&CONTROLA("NOMECLI")&"', CODCAT = '"&CONTROLA("CODCAT")&"' WHERE ID = "&CONTROLA("ID")&"")
response.write "segundo if, não achou nada novo, só fez update"
response.End()
END IF
VERIFICA.MOVENEXT
LOOP
response.write "finalizou"
response.End()
1) Preciso buscar PRIMEIRO NO BANCO DATABASE os DADOS e comparar com os que estão no BANCO ALTERACOES;
2) Se no banco ALTERACOES TIVER algum CLIENTE que não tenha na base de dados DATABASE, deve INSERIR este CLIENTE no banco DATABASE;
3) Se não tiver CLIENTE no banco DATABASE, deve APENAS fazer o UPDATE nos clientes já cadastrados do banco ALTERACOES para o DATABASE;
Não sei se fui claro, mas é isso que preciso.
Não estou tendo cabeça para programar.
Conseguir chegar até aí, mas não funciona ao certo meu código no primeiro IF
Se alguem puder me ajudar nesta lógica agradeço, to perdidão mesmo.
Obrigado.
Carregando comentários...