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

    cancella record e ripristina counter

    Salve a tutti,

    supponendo di avere una tabella con contatore automatico e supponiamo che io debba conoscere il valore del contatore del record che sto per inserire.
    Ho fatto qualcosa del genere:

    codice:
    SQL = "SELECT * FROM lista ORDER BY codice"
    rec.Open sql, conn ,3,3
    if not (rec.eof) then 
    rec.movelast
    else
    response.end()
    end if%>
    <%ID=rec("codice")+1%>
    Ok, se sono stati inseriti ad esempio 5 rercord senza che sia stata fatta alcun DELETE tutto funziona bene, ottengo ID=6, se invece sono state eseguite ad esempio 3 cancellazioni questo code non ne tiene conto quindi mi assegna ID=6 quando invece magari il counter è a 8 e quindi dovrei ottenere ID=9

    In pratica basterebbe che ad ogni cancellazione il database fosse ripristinato (come lo si fa da Access) in questo modo i counter vengono aggiornati e i nuovi inserimenti ne tengono conto.

    Qualcuno sa come fare a ripristinare il DB in seguito alla cancellazione di un record?
    Ho cercato nel forum ma l'unico link presente http://forum.html.it/forum/search.ph...by=&sortorder= non funziona!

    Grazie tante,


  2. #2
    l'unica è fare prima un'insert vuota, ricavare l'ultimo id generato, e usarlo....
    codice:
    sql="insert into tabella(campo) values('')"
    
    conn.execute(sql)
    
    set rs=conn.execute("select @@identity from tabella")
    
    dim lastId
    
    lastId=rs(0)

    oppure ti fai una stored procedure che ti inserisca il record che vuoi e ti restituisca direttamente l'id che ha usato... cmq il procedimento piu corretto dal punto di vista di buona programmazione è il primo

    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

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.