Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    598

    Transazioni e gestione errrore

    Sto scrivendo 1 paginetta che fa delle transazioni con un db mssql, ada premettere che le query funzioanno bene ed anche il rollback.
    Il mio problema è nella gesione degli errori, infatti se la transazione fallisce, viene eseguito il rollback ma ricevo :

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][ODBC SQL Server Driver][SQL Server]Violation of PRIMARY KEY constraint 'PK__TBL_ACCESSO'. Cannot insert duplicate key in object 'dbo.TBL_ACCESSO'.

    /registrazione/step1.asp, line 394


    io vorrei che al posto di questo orrore si visualizzasse un msg Username già utilizzato, ho provato con questo codice ma non va.....


    [PHP]
    <%
    conn.beginTRans
    conn.execute sql_accesso
    conn.execute sql_DATI



    if conn.Errors.Count > 0 Then

    conn.rollbackTrans
    'In questa fase lo uso per vedere il numero dell errore
    response.Write("Errore aggiornamento "+conn.Errors.Count)
    response.Write(con.errors.item(0))
    else
    conn.CommitTrans
    response.Write("Transazione ultimata")
    end if


    %>
    [PHP]

    ho provato ad inserire On Error Resume Next , ma continua l'esecuzione, come posso reperire il numero dell'errore?
    grazie
    Soffrire sempre mollare mai

  2. #2
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    if conn.Errors.Count <> "0" Then
    conn.rollbackTrans
    'In questa fase lo uso per vedere il numero dell errore
    response.Write("Errore aggiornamento "+conn.Errors.Count)
    then
    conn.CommitTrans
    end if

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    598
    mi dispiace ma non funziona, mi visualizza sempre

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

    [Microsoft][ODBC SQL Server Driver][SQL Server]Violation of PRIMARY KEY constraint 'PK__TBL_ACCESSO'. Cannot insert duplicate key in object 'dbo.TBL_ACCESSO'.

    /registrazione/step1.asp, line 394
    Soffrire sempre mollare mai

  4. #4
    Utente di HTML.it L'avatar di agenti
    Registrato dal
    Feb 2002
    Messaggi
    2,427
    avevo scritto male ,
    riproviamo..


    on error resume next
    if conn.Errors.Count <> "0" or err.number <> "0" Then
    conn.rollbackTrans
    'In questa fase lo uso per vedere il numero dell errore
    response.Write("Errore aggiornamento ")
    else
    conn.CommitTrans
    end if

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    598
    ok ora va grazie
    Soffrire sempre mollare mai

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