Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Metodo delete

  1. #1
    Ines_70
    Guest

    Metodo delete

    Perchè non riesco ad eliminare tutti i record di un database Access con il metodo Delete?????

    codice:
    If DE3.cn3.State = 1 Then DE3.cn3.Close
            DE3.cn3.Open
            ' TENTO DI PULIRE IL DATABASE CANCELLANDO TUTTI I RECORD
            DE3.cn3.Delete adAffectAll
            DE3.cn3.UpdateBatch
    Mi da il seguente errore: Operazione non consentita nel contesto corrente.

    Qualcuno sa dirmi perchè??????

    Se cancello solo un record (omettendo adaffectAll) il record viene tolto

    Ciao

  2. #2
    Ines_70
    Guest
    Un aiutino vi prego......

  3. #3
    Ciao,
    non capisco una cosa, il tuo obiettivo è cancellare tutti i records della tabella?
    ...e quando meno te lo aspetti potrebbe capitare qualcosa di bello, di più importante di quello che avevi programmato...

  4. #4
    Utente di HTML.it L'avatar di allejo
    Registrato dal
    Jul 2001
    Messaggi
    747
    Spiegati meglio posti tutto il codice così vedo il problema.
    Allejo

  5. #5
    Ines_70
    Guest
    Io vorrei cancellare tutti i records della tabella.
    Ho risolto con il codice seguente, ma non mi piace come soluzione, la cancellazione è troppo lenta:

    codice:
    Do While Not DE3.rsStampacc.EOF
         DE3.rsStampacc.Delete
         DE3.rsStampacc.MoveNext
    Loop
    DE3.rsStampacc.UpdateBatch
    Esiste un modo alternativo?????
    Grazie - Ines

  6. #6
    con ADO puoi fare cosi'

    codice:
    sSQL = "DELETE FROM nome_tabella"
    conn.execute sSQL

  7. #7
    anche con i DE mi pare che puoi fare lo stesso, prova così

    codice:
    sSQL = "DELETE FROM nome_tabella"
    DE3.execute sSQL
    sicuramente è molto + veloce dello scorrere tutti i record :P


    ciao
    ...e quando meno te lo aspetti potrebbe capitare qualcosa di bello, di più importante di quello che avevi programmato...

  8. #8
    Ines_70
    Guest
    Mi dice "Impossibile trovare il metodo o il membro dei dati"

    codice:
            
    DE3.rsStampacc.Open
    sSQL = "DELETE FROM Bollettini"
    DE3.Execute sSQL
    Dov'è l'inchippo??????

  9. #9
    Ciao Ines,

    mi sono spegato male prima, ho dimenticato una cosa

    codice:
        sSQL = "DELETE * FROM Bollettini"
    
        ' la sintassi è:
        ' nome_data_environment.nome_connessione.Execute sSQL
        ' quindi se non ho capito male così dovrebbe andare:
    
        DE3.cn3.Execute sSQL
    ciao, fammi sapere
    http://www.navimel.com

    La disumanità del computer sta nel fatto che, una volta programmato(da me) e messo in funzione, FA QUEL CAZZO CHE VUOLE!!!

  10. #10
    Ines_70
    Guest
    Infatti, così funziona!!!!! Grazie a tutti per la collaborazione.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.