Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di Gumble
    Registrato dal
    Jun 2004
    Messaggi
    1,313

    [vb6] - gestire errori con db

    codice:
    Public Function cmdQuery(q As String)
        dbConn.Execute q
    End Function
    mi piacerebbe fare in modo che se la query ('inserto into' o 'del from') non va a buon fine, la routine che ha chiamato questa funzione lo sappia in modo da avvisare l'utente.

    come posso fare?
    alcool: la causa e la soluzione di tutti i problemi

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Assegna il risultato dell'execute ad un recordset ed esamina il recordset stesso...

  3. #3
    Utente di HTML.it L'avatar di Gumble
    Registrato dal
    Jun 2004
    Messaggi
    1,313
    Originariamente inviato da oregon
    Assegna il risultato dell'execute ad un recordset ed esamina il recordset stesso...
    quindi se il recordset é vuoto vuol dire che c'é stato un errore?

    codice:
    dim res as adodb.recordset
    set res = dbConn.execute(q)
    
    if res.eof then msgbox "errore"
    giusto?

    inoltre, é possibile sapere che tipo di errore sql é? per esempio potrebbe essere:

    di sintassi nella query,
    l'id x non é stato trovato quindi non ha cancellato niente
    la tabella non accetta duplicates (per un certo field)
    ...
    alcool: la causa e la soluzione di tutti i problemi

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Allora ti conviene esaminare la collection Errors di ADO subito dopo l'esecuzione della frase SQL, in particolare dai un'occhiata alla proprieta' SqlState e alle altre dei singoli oggetti Error ...

    P.S. L'errore di sintassi della query deve essere evitato a compile time, non deve essere trappato a run time.

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.