[Access2010] Ricavare l'id del record salvato

di
Anonimizzato9967
il
4 risposte

[Access2010] Ricavare l'id del record salvato

Salve ragazzi, devo risolvere un enigma.
Ho un database access che lavora come front-end su una base dati mysql che si trova online (lavoro con le tabelle collegate via odbc).
In una maschera inserisco i file attraverso un recordset attraverso la solita sintassi
rs.addnew
blablabla
rs.update
tuttavia vorrei che alla fine dell'inserimento in qualche maniera io riesca ad intercettare il valore della chiave , che corrisponde ad un numero che si autoincrementa.
Come posso fare?

fino a quando lavoravo con la base dati in locale, prima di chiudere il recordset mi ricavavo l'id, ma a quanto pare con l'ODBC l'autoincremento avviene sul server e solo dopo aver digitato (rs.update)

4 Risposte

  • Re: [Access2010] Ricavare l'id del record salvato

    Jet restituisce con @Identity accessibile solo via Ado, quello che fai tunon va bene se sei in Multiutenza, con mysql devi interrogare con una query passtrought la funzione specifica.
    Qui trovi tutto:
    http://dev.mysql.com/doc/refman/5.0/en/getting-unique-id.html
  • Re: [Access2010] Ricavare l'id del record salvato

    ' ' Ricavo l'id del trattamento attraverso questo stratagemma
    Dim Sql As String
    Sql = "Select TOP 1 id from trattamenti ORDER BY ID DESC;"
    Set rs = CurrentDb.OpenRecordset(Sql)
    ID = rs("id")
    rs.Close
    
    immaginavo.. infatti avevo pensato ad una soluzione grezza come questa..
  • Re: [Access2010] Ricavare l'id del record salvato

    Non va bene, ma ti dirò che se dopo l'update leggi il valore del campo id del rs ottieni la stessa cosa.
    In locale singola utenza è ok, in accesso concorrente multiuser no.
  • Re: [Access2010] Ricavare l'id del record salvato

    Alex perdonami so di sembrare un caprone ma ho provato a tradurre quello che c'era scritto in codice operativo ma non c'è stato verso..
    potresti darmi una mano ad impostare il codice?
    In vba come dovrei impostare la cosa?
Devi accedere o registrarti per scrivere nel forum
4 risposte