Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    274

    [VB 2008] - Recuperare ID dell'ultimo record inserito

    Buonasera a tutti, sto cercando di creare una piccola funzione per recuperare l'ID dell'ultimo record inserito in una determinata tabella.

    Guardando in rete ho trovato un es. che ho modificato in base alle mie esigenze, il problema è che il risultato è sempre 0.

    Grazie a chiunque riesca a darmi qualche info.


    Dim con As OleDbConnection = New OleDbConnection("Provider=Microsoft.jet.oledb.4.0; data source=c:\test\data\test.mdb")
    Dim cmd As OleDbCommand = New OleDbCommand("Select * FROM Tabella1", con)
    con.Open()
    Dim myDA As OleDbDataAdapter = New OleDbDataAdapter(cmd)
    Dim myDataSet As DataSet = New DataSet()
    myDA.Fill(myDataSet, "Tabella1")
    con.Close()
    con = Nothing




    Dim newID As Integer = 0
    Dim idCMD As OleDb.OleDbCommand = New OleDb.OleDbCommand("SELECT @@IDENTITY", con)
    MsgBox(newID)

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    237
    Quote Originariamente inviata da mdnet Visualizza il messaggio
    Buonasera a tutti, sto cercando di creare una piccola funzione per recuperare l'ID dell'ultimo record inserito in una determinata tabella.

    Guardando in rete ho trovato un es. che ho modificato in base alle mie esigenze, il problema è che il risultato è sempre 0.

    Grazie a chiunque riesca a darmi qualche info.


    Dim con As OleDbConnection = New OleDbConnection("Provider=Microsoft.jet.oledb.4.0; data source=c:\test\data\test.mdb")
    Dim cmd As OleDbCommand = New OleDbCommand("Select * FROM Tabella1", con)
    con.Open()
    Dim myDA As OleDbDataAdapter = New OleDbDataAdapter(cmd)
    Dim myDataSet As DataSet = New DataSet()
    myDA.Fill(myDataSet, "Tabella1")
    con.Close()
    con = Nothing




    Dim newID As Integer = 0
    Dim idCMD As OleDb.OleDbCommand = New OleDb.OleDbCommand("SELECT @@IDENTITY", con)
    MsgBox(newID)
    Ciao
    Forse mi è sfuggito qualcosa..
    Ma per ottenere l'ID cos'è che fai?
    Crei un oggetto oledbCommand con la query in sql e poi? La fai eseguire la query?
    Il codice completo è questo...
    codice:
    Dim query As String = "Insert Into Categories (CategoryName) Values (?)"
    Dim query2 As String = "Select @@Identity"
    Dim ID As Integer
    Dim connect As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Northwind.mdb"
    Using conn As New OleDbConnection(connect)
      Using cmd As New OleDbCommand(query, conn)
        cmd.Parameters.AddWithValue("", Category.Text)
        conn.Open()
        cmd.ExecuteNonQuery()
        cmd.CommandText = query2
        ID = cmd.ExecuteScalar()
      End Using
    End Using

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    274
    Grazie infinite, ho risolto.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    237
    Quote Originariamente inviata da mdnet Visualizza il messaggio
    Grazie infinite, ho risolto.
    Bene.
    Per favore, posta il codice corretto, in modo che possa essere utile a qualcun'altro che incontrerà il tuo stesso problema.

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.