Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291

    VB6 - Records DB Access 2000

    Rilevo un fatto strano nel DB Access,
    ogni volta che dò il comando: ...insert into... i records vengono scritti 3 volte !!
    Come mai?
    LM

  2. #2
    Posta il codice così vediamo meglio.
    Giorgio
    L'esperienza è il tipo di insegnante più difficile. Prima ti fa l'esame, e poi ti spiega la lezione. (Oscar Wilde)

  3. #3
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Come vuoi.
    codice:
           OggSR1.CommandText = "Insert Into TblParti(RegLodi, Deposito, PartiDett, Oggetto, CollArb)" _
                & "values ('" & (FrmInfo.txtPP(0).Text) & "', '" & (FrmInfo.txtPP(1).Text) _
                & "', '" & Replace(FrmInfo.txtPP(2).Text, "'", "''") & "', '" & Replace(FrmInfo.txtPP(3).Text, "'", "''") _
                & "', '" & Replace(FrmInfo.txtPP(4).Text, "'", "''") & "');"
            OggSR1.Execute
    LM

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Quante volte viene richiamata questo blocco? Hai provato a mettere un breakpoint per verificare se, per un motivo o per un altro, esso non venga eseguito più volte?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Sì ho provato. Il codice (query) viene eseguito una sola volta, anzi a ben vedere, nella prova ho trovato scritti 5 redords; sarà un caso ma è il numero dei campi !! VVoVe:
    Sbaglio qualcosa nella query ?
    LM

  6. #6
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Posto l'intera routine, perchè effettivamente commetto degli errori (non so quali...). Ho provato ad inserire:

    OggSR1.CommandText = "Delete * From TblParti"
    OggSR1.Execute

    e dopo la cancellazione dei records, trovo scritto un solo record, quindi a monte c'è qualcosa che non va (forse il tipo di cursore?):

    codice:
    'Inserimento dei dati nel DB - TblParti:
        Dim OggSR1 As New ADODB.Command
        Dim ConSR1 As New ADODB.Connection
     
     'Esegue la connessione con il DataBase:
            With ConSR1
                .ConnectionString = DataConnessione
                .CursorLocation = adUseClient   'tipo di cursore
                .Mode = adModeShareDenyNone     'nessuna limitazione
                .CommandTimeout = 15
                .Open
           End With
           
            OggSR1.ActiveConnection = ConSR1
            OggSR1.CommandType = adCmdText
            
            ' Prima di salvare Elimina i vecchi records dalla tabella:
            OggSR1.CommandText = "Delete * From TblParti"
            OggSR1.Execute
            
    'Inserisce i dati del FrmInfo nel DB TblParti:
            OggSR1.CommandText = "Insert Into TblParti(RegLodi, Deposito, PartiDett, Oggetto, CollArb)" _
                & "values ('" & (FrmInfo.txtPP(0).Text) & "', '" & (FrmInfo.txtPP(1).Text) & "', '" & Replace(FrmInfo.txtPP(2).Text, "'", "''") & "', '" & Replace(FrmInfo.txtPP(3).Text, "'", "''") & "', '" & Replace(FrmInfo.txtPP(4).Text, "'", "''") & "');"
            OggSR1.Execute
    
    'Chiude la connessione - TblParti:
        ConSR1.Close
        Set ConSR1 = Nothing
    LM

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Scusa ... alla fine non ho capito ...

    Trovi un record o 5 record scritti nel db?

  8. #8
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Dopo l'inserimento del codice:

    OggSR1.CommandText = "Delete * From TblParti"
    OggSR1.Execute

    ovvero dopo aver cancellato tutti i records dalla Tbl, la query .. "Insert Into TblParti ... sembra funzionare, con la scrittura di un solo record.
    E' un comportamento bizzarro, o sono io che commetto errori nella query ?
    LM

  9. #9
    Senti LMondi,
    quello che ti capita succede quando si prendono i records da più tabelle e non restringi a dovere il criterio della Sql. Da quante tabelle prelevi i records? Se parli di textbox non si capisce quante sono le tabelle in gioco.
    Giorgio
    L'esperienza è il tipo di insegnante più difficile. Prima ti fa l'esame, e poi ti spiega la lezione. (Oscar Wilde)

  10. #10
    compatta e ripristina

    ciao
    i miei post sono RIFERITI TUTTI A VISUAL BASIC 6
    MSN MESSENGER : magicolotto@hotmail.it

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.