Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 39
  1. #1

    [access] problema recupero ultimo ID inserito

    Ciao a tutti.
    Ho questo problemino: inserisco un record nella mia tabella, e immediatamente dopo recupero l'ultimo ID con "SELECT MAX(ID) FROM TABELLA".

    Solo che mi recupera il penultimo ID, e non quello appena inserito. Come è possibile?

  2. #2
    Prova a fare così:

    codice:
    SELECT MAX(ID) FROM TABELLA order by ID desc
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    così mi da errore perchè manca la funzione di aggregazione,
    comunque non va lo stesso. Da sempre il peunultimo.
    Ho pensato anche che magari trascorre troppo poco tempo tra la scrittura del record e la immediata lettura, quindi i dati non sono ancora scritti quando vado a fare il "SELECT MAX(ID)"...
    sto vaneggiando?

  4. #4
    E' strano...vediamo il codice della pagina.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  5. #5

  6. #6
    ho provato, ma restituisce sempre 0

  7. #7
    Ribadisco:

    Originariamente inviato da maximum
    ...vediamo il codice della pagina.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  8. #8
    ecco il codice, scusate il ritardo...

    codice:
    	sql="INSERT INTO TABLE (cliente, destinazione) VALUES ('"&cliente&"', '"&destinazione&"')
    	set Command1 = Server.CreateObject("ADODB.Command")
    	Command1.ActiveConnection = conn
    	Command1.CommandText = sql
    	Command1.Execute()
    	
    	Set rec_lastID = Server.CreateObject("ADODB.Recordset")
    	rec_lastID.ActiveConnection = conn
    	rec_lastID.Source = "SELECT MAX(ID) AS NUM FROM TABLE"
    	rec_lastID.Open()
    	lastID = rec_lastID("NUM")

  9. #9
    Prova così:
    codice:
    	sql="INSERT INTO TABLE (cliente, destinazione) VALUES ('"&cliente&"', '"&destinazione&"')
    	set Command1 = Server.CreateObject("ADODB.Command")
    	Command1.ActiveConnection = conn
    	Command1.CommandText = sql
    	Command1.Execute()
    	
    	Set rec_lastID = Server.CreateObject("ADODB.Recordset")
            strSql = "SELECT MAX(ID) AS NUM FROM TABLE"
            rec_lastID.Open strSql, conn
    	lastID = rec_lastID("NUM")
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  10. #10
    è pazzesco, anche così pesca sempre il penultimo

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.