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

    [Asp.Net - Vb.Net] Esecuzioni SQL

    Ciao a tutti,
    quando eseguo delle query in SQL vedo che non vanno. Mi sono accorto che però non partono per errore nella stessa query.

    E' possibile essere avvisati come faceva ASP quando c'è un errore(di sintassi) nella query? Sinceramente non mi dice niente, sembra farla e poi... niente.

    Marco
    Marco Tibaldeschi
    www.dontbenegative.it

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    4,127
    infatti si viene avvisati se è sbagliata la query..
    sicuro che esegui veramente la query? non è ke prepari tutto ma poi non fai niente? posta il codice và

  3. #3
    Dopo aver recuperato i dati, creo la seguente query SQL (che non dà alcun errore)
    (ho modificato il messaggio perchè creava problemi alla pagina)

    Quindi richiamo questa subroutine

    codice:
    ExecuteStatement(sql)
    Il cui codice è

    codice:
    sub ExecuteStatement(strSQL)
    	
    	dim objCmd as new OleDbCommand(strSQL, Conn)
    	try
    		objCmd.Connection.Open()
    		objCmd.ExecuteNonQuery()
    	catch ex as Exception
    		lblSummary.Text =  "ERRORE DB!"
    	end try
    	
    	objCmd.Connection.Close()
    	
    end sub
    Chiaramente Conn a cui fa riferimento è dichiarata a livello globale.

    Dove sta il problema???
    Marco
    Marco Tibaldeschi
    www.dontbenegative.it

  4. #4
    Risolto

    codice:
    lblSummary.Text =  ex.toString
    Era un semplicissimo errore di campo...
    Delle volte si perdono ore per cavolate!

    Marco
    Marco Tibaldeschi
    www.dontbenegative.it

  5. #5
    Originariamente inviato da Marconline
    Era un semplicissimo errore di campo...
    L'oggetto ex di tipo exception presenta molte informazioni utili per capire meglio l'errore es.
    codice:
    ex.Message
    ex.StackTrace
    se vuoi puoi andare oltre e gestire errori in maniera piu' specifica e quindi piu' approfondita. Ad esempio, se in una funzione temi che il database possa generare eccezioni puoi inserire, oltre alla "normale" exception, la gestione delle eccezioni legate al db che stai usando es.
    codice:
    Sub ExecuteStatement(ByVal strSQL As String)
            Dim objCmd As New OleDbCommand(strSQL, Conn)
            Try
                objCmd.Connection.Open()
                objCmd.ExecuteNonQuery()
            Catch exOledb As OleDbException
                lblSummary.Text = exOledb.Message & " " & exOledb.StackTrace & " " & exOledb.ErrorCode
            Catch ex As Exception
                lblSummary.Text = ex.Message
            Finally
                objCmd.Connection.Close()
            End Try
        End Sub
    Saluti a tutti
    Riccardo

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.