Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucas Lima VB

[Resolvido] [b]Como duplicar registros?[/b]

Recommended Posts

Como Duplicar Registros?

 

Tenho um formulario, e salvo as informações em um banco de dados SQL

 

porem, ao clicar em gravar gostaria que gravasse o mesmo registro duas vezes

 

COmo faço isso?

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você tentar inserir a chave primária novamente vai dar erro de "duplicate key", então tem que criar outra.

 

Mas porque você precisa inserir duas vezes ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você tentar inserir a chave primária novamente vai dar erro de "duplicate key", então tem que criar outra.

 

Mas porque você precisa inserir duas vezes ?

 

Não ha chave Primaria

 

asism, vou salvar duas vezes

para alterar o segundo

 

pois quero gravar o segundo, e alterar dois campos, e não todos novamente

é como se meu formulario tivesse 10 campos..

eu dava um AddNew... preenchesse os 10

no segundo registro que irei digitar... 8 desses 10 campos, são as mesmas informações do anterior

não quero digitar os 10 novamente!

 

quero apenas os dois que deve ser mudados

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Farei com nomes, para ver se esclarece:

 

private sub cmdSalvar_Click()

addnew

rs("nome") = "fulano"
rs("idade") = "23"

update

addnew

rs("nome") = "fulano"
rs("idade") = "23"

update

end sub

Sendo que rs, é sua variável de recordset com o banco.

 

Caso não esteja fazendo sua conexão via código, avise, pois ai muda um pouco isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aqui esta o que quero, bem especifico, e como esta meu codigo atualmente

 

1º - (Salvei meu registro, com os 5 campos preenchidos!)

BancoRevistasOperações.Recordset.Update

2º - (Logo apos esse Addnew, quero que os valores que coloquei nos 3 primeiros campos do registro anterior, continuem os mesmo, e só irei alterar os dois ultimos)

BancoRevistasOperações.Recordset.AddNew

 

3º - (O foco ira direto para o 4º campo, pois os 3 primeiros ja estaram preenchidos)

'TxtCodigoBancaRevistasOperações.SetFocus

 

4º - (Aqui, apenas os dois ultimo campos, estarão em branco, e habilitados para alterações)

TxtCodigoBancaRevistasOperações.Text = ""
TxtReparteRevistasOperações.Text = ""


TxtCodigoBancaRevistasOperações.Locked = False
TxtReparteRevistasOperações.Locked = False

 

Vlw galera, sepuderem me ajudar ficarei extremamente agradecido

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, você está fazendo sua conexão com objeto mesmo.

 

Olha só, não existe nenhuma propriedade pronta que lhe permitirá adicionar os mesmos dados duas vezes.

Se fosse via código seria mais fácil, mas via objeto, você tem o problema que quando faz o update, os campos perdem seus valores né?

 

O que você pode fazer é, antes de inserir pela primeira vez os registros no banco, armazene os mesmo em variáveis. Ai então você faz seu update.

 

Depois faça os valores que foram armazenados nas variáveis voltarem para os campos, e em seguida, faça um novo update.

 

Tudo isso deve estar dentro de uma mesma rotina, para que não seja necessário digitar nem clicar em nada.

 

Por exemplo:

private str1, str2, str3 as string

private sub cmdNovo_click

adodc1.recordset.addnew

end sub

'então você digita os dados nos campos
'e no botão salvar faça:

private sub cmdSalvar_click

str1 = text1.text
str2 = text2.text
str3 = text3.text

adodc1.recordset.update

adodc1.addnew

text1.text = str1
text2.text = str2
text3.text = str3

adodc1.update

end sub

Isso deve resolver seu problema. Mas fique atento quando for inserir os outros dois campos, cuidado para ter certeza que está adicionando na linha certa.

 

Se tiver dúvida ainda avise.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.