qual'è il codice per far sì che io riesca a duplicare i record in un database Access (nella stessa tabella)?
in sostanza ho il primo record che è l'originale...poi, lo vorrei copiare sul secondo e questo modificarlo...e via così...
qual'è il codice per far sì che io riesca a duplicare i record in un database Access (nella stessa tabella)?
in sostanza ho il primo record che è l'originale...poi, lo vorrei copiare sul secondo e questo modificarlo...e via così...
scusa la domanda ma perchè vorresti copiarlo se poi lo modifichi?!?![]()
semplicemente perchè mi serve un originale!
dal quale prelevo i dati salvati e li modifico in un nuovo...
quindi, copio l'originale e modifico la copia...la volta dopo copio l'originale e modifico la copia...e così via...
perchè non fare due tabelle??Una "Record_originali" e una "Record_Copiati".
Alternativamente crea in tabella un campo di tipo bit "copy" che valorizzi a 1 se è un record copiato oppure a 0 se è il record originale.
A livello codice effettua l'estrazione del record che vuoi copiare e lo memorizzi in un recordset. successivamente effettui l'insert (o nell'altra tabella oppure nella stessa tabella magari seguendo l'indicazione che ti ho fornito io riguardo il campo bit) tramite la normale sintassi SQL.
Spero di aver compreso il problema.
Presumo che, adottando ADO, sia possibile duplicare i record all'interno della stessa tabella usando un primo RecordSet, eventualmente aperto con cursore forward only e in modalità snapshot; effettuando la scansione su quel recordset, per ciascun record è necessario eseguire una query di INSERT INTO nella stessa tabella, duplicando di fatto l'istantanea ottenuta col primo recordset.
Ciao!![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
interessante...ho qualche difficoltà nel riportare a codice il tutto però... :master:Originariamente inviato da alka
Presumo che, adottando ADO, sia possibile duplicare i record all'interno della stessa tabella usando un primo RecordSet, eventualmente aperto con cursore forward only e in modalità snapshot; effettuando la scansione su quel recordset, per ciascun record è necessario eseguire una query di INSERT INTO nella stessa tabella, duplicando di fatto l'istantanea ottenuta col primo recordset.
Ciao!![]()
qualche aiuto?
up, qualche aiuto?
Almeno fai un tentativo...![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
mi pare il minimo...ci sto provando, ma non sapendo bene dove mettere le mani vado a tentativi grossolani![]()
Perchè non usi SQL?
Dico: invece di utilizzare una query del tipo "classico"
una query del tipo:Codice PHP:
INSERT INTO tabella (Campo1, Campo2, Campo 3) VALUES ('Valore1', 'Valore2', 'Valore3')
e con un comando iterativo te lo ripeti tutte le volte che vuoi?Codice PHP:
INSERT INTO tabella (Campo1, Campo2, Campo 3) SELECT 'Valore1', 'Campo2', 'Campo3' FROM Tabella WHERE Campo1 = 'Valore_originale_campo1'
P.S.: Come vedi puoi ricopiare valori già presenti in altri record (qui: Campo2 e Campo3) ed anche (nella stessa query) inserire valori nuovi (qui: Valore1)
![]()
-... Jack: quando ti viene in mente un'idea, scrivila e basta!-
(Alec Baldwin "Caccia a Ottobre Rosso)