Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Spostare un record o set di record

    da un DB a un altro.

    C'è qualche funzione particolare oppure sono costretto a estrarre tutto il record da un DB (1° SQL) e aggiungere record per record sul secondo DB (2° SQL ADD)?

    Grazie.
    "Quando si mangia il formaggio svizzero, che succede ai buchi?" (B. Brecht)

    Visitate il mio sito:
    www.clamorosalcibali.it

  2. #2
    Puoi provare a fare così:

    codice:
    insert into Tabella1 
               ( select * from Tabella2 
                 where ......
               );
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    come sarebbe la sintassi completa? (in asp)

    sql= "insert into Tabella1 ( select * from Tabella2 where ......"
    ???
    non credo?

    e poi questo non "cancella" i record inseriti nel nuovo DB dal vecchio, e poi mi sembra che sia lo stesso DB ma una tabella diversa, a me serve proprio un'altro DB in access.
    "Quando si mangia il formaggio svizzero, che succede ai buchi?" (B. Brecht)

    Visitate il mio sito:
    www.clamorosalcibali.it

  4. #4

    nessuno?

    provo a complicare la cosa, dovrei:

    1) fare una select dei record dal db1.mdb e visualizzare i record per id crescente (es. da id 1 a id 50)

    id - nome - cognome
    1 - pippo - pluto
    2 - paperino - topolino
    ...
    50 - minny - gambadilegno

    2) passare questi valori in un form per selezionare casella di spunta per selezionare gli id interessati

    3) spuntando le caselle di controllo passo gli ID a una pagina che:

    - copia quei record (gli id selezionati) in un nuovo ma esistente database (db2.mdb)
    - cancella quei record (gli id selezionati) dal database originale (db1.mdb)

    quindi il punto 2) mi deve creare un array con gli ID da "spostare" (es. 1,4,5,7,45)

    il punto 3) invece deve fare un ADD dei record (tutti i campi) sul db2.mdb e poi eliminarli dal db1.mdb
    "Quando si mangia il formaggio svizzero, che succede ai buchi?" (B. Brecht)

    Visitate il mio sito:
    www.clamorosalcibali.it

  5. #5
    Utente di HTML.it L'avatar di Fichico
    Registrato dal
    Nov 2002
    residenza
    Bologna
    Messaggi
    581
    Dalla select iniziale, mostri a video i dati visualizzandoli in una form come scritto da te:

    ID - Nome - Cognome
    aggiungendo un campo hidden con l'id chiamato "idrecord" ed un campo di check da spuntare o meno per l'eliminazione/inserimento

    Il campo di check lo chiamiamo ad esempio "cancella"

    A priori immagino Tbl1 per la tabella nel db1 e Tbl2 per la tabella nel db2 dove fare l'insert

    nella pagina di action della form:

    codice:
    ti imposti le tue conn1 (per il db1) e conn2 (per il db2)
    
    Set conn1=Server.CreateObject("ADODB.Connection")
    conn1.Open ......
    Set conn2=Server.CreateObject("ADODB.Connection")
    conn2.Open ......
    
    for i = 1 to request("cancella").count
    
    sql1 = "Select * from Tbl1 where idrecord1 = " & request.form("idrecord") (i)
    Set rs1 = server.createobject("ADODB.recordSet")
    rs1.open sql1, conn1, 3, 3
    
    id_record = rs("idrecord1")
    nome_record = rs("nome_record1")
    cognome_record = rs("cognome_record1")
    
    sql2 = "Select * from Tbl2 where idrecord2 = " & id_record
    Set rs2 = server.createobject("ADODB.recordSet")
    rs2.open sql2, conn2, 3, 3
    rs2.addnew
    rs2("id_record2") = id_record
    rs2("nome_record2") = nome_record
    rs2("cognome_record2") = cognome_record
    rs2.update
    rs2.close
    
    next
    
    rs1.close
    
    for i = 1 to request("cancella").count
    conn1.Execute "delete from Tbl1 where id_record1 = " & request.form("idrecord")(i)
    next
    
    conn1.Close
    conn2.Close

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.