Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di emu86
    Registrato dal
    May 2005
    Messaggi
    324

    MSSql/oracle e ultimo id inserito

    Ciao a tutti... forse è banale come domanda, ma non io non ho capito molto e mi serve un consiglio.

    Sto realizzando un web application in php che deve funzionare su vari db, tra cui anche mssql e oracle.

    Mi servirebbe sapere come recuperare l'ultimo id inserito in una tabella successivamente all'inserimento di un dato. come faccio? su mysql c'è la funzione mysql_insert_id(), con postgre inserisco un " RETURNING id" alla fine della query, e su mssql come si fa? e su oracle? grazie delle risposte.

    Ho dato un'occhiata su google, ma mi ha confuso un po' le idee, nel senso che su mssql ho trovato che bisognerebbe inserire una ulteriore query tipo "SELECT LAST_INSERT_ID=@@IDENTITY", mentre su oracle non ho trovato molto, o non ho cercato a sufficienza.

    ciao e grazie mille

  2. #2
    per M$SQL è ok @@IDENTITY, anche se sarebbe preferibile SCOPE_IDENTITY.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    1,150
    Su Oracle non c'e' (o almeno fino a quando ci lavoravo io non c'era) una funzione simile.

    Poi risolvere eseguendo MAX(id) oppure, ma credo non sia il tuo caso, calcolarsi prima di inserire il valore della SEQUENCE che immagino sia applicata a quel campo.

    Oltre all'id puoi utilizzare anche il RowId

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.