[access]laatste insert id ophalen voor koppeltabel

Pagina: 1
Acties:

  • Driek
  • Registratie: Maart 2002
  • Nu online
Hallo,

Situatie:
Ik wil een artikel invoeren en hierbij aangeven bij welke artikelgroepen dit artikel hoort. 1 artikel kan dus bij meerdere artikelgroepen horen.
Probleem:
Als ik een nieuw artikel invoer is het artikelid nog niet bekend en vult hij de koppeltabel dus slechts voor de helft. Als ik het artikel ga editen dan heeft hij het artikelnummer wel en vult hij de koppeltabel zoals het moet.

Wie weet hoe ik dus bij het invoeren van het artikel het nieuwaangemaakte artid kan gebruiken in de koppeltabel.

Driek

Tijd van werken, tijd van rusten


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Welke database gebruik je?

Ow en bedenk een mooiere titel voor je topic, dan edit ik die zometeen. Verwerk gelijk je database naam in die titel.

  • elnino
  • Registratie: Augustus 2001
  • Laatst online: 03-09 05:13
Op donderdag 21 maart 2002 15:05 schreef driek_ het volgende:
Wie weet hoe ik dus bij het invoeren van het artikel het nieuwaangemaakte artid kan gebruiken in de koppeltabel.
In MySQL kun je gebruik maken van LAST_INSERT_ID o.i.d. (of in combinatie met PHP mysql_insert_id()).

edit: Je gebruikt dus geen MySQL, misschien kent Access een vergelijkbare functie? :?

  • Driek
  • Registratie: Maart 2002
  • Nu online
ik gebruik msaccess

en ik probeer het uit met pws dmv asp

de database heet commun.mdb

Tijd van werken, tijd van rusten


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Volgens mij dekt de topictitel zo de lading beter

  • whoami
  • Registratie: December 2000
  • Laatst online: 09:07
code:
1
select @@identity...

Maar dit werkt pas vanaf access 2000 geloof ik.

https://fgheysels.github.io/


  • Dido
  • Registratie: Maart 2002
  • Nu online

Dido

heforshe

Misschien is me niet helemaal duidelijk wat je probleem is, maar als je als ID een door access gengenereerde unieke key gebruikt wordt die toch aangemaakt op het moment dat je een nieuw record opvoert? Is-ie dan niet vanaf dat moment te gebruiken? (Ik weet natuurlijk niet wat je precies met artikel ID bedoeld...)

Wat betekent mijn avatar?


  • Driek
  • Registratie: Maart 2002
  • Nu online
ja dat klopt
er wordt een nieuw artikelid aangemaakt, maar hoe kan ik die dan vervolgens in dezelfde querie gebruiken om de koppeltabel mee te vullen?

Tijd van werken, tijd van rusten


  • ParaNoiMia
  • Registratie: Mei 2000
  • Laatst online: 05-09 11:47
Tis een omweg, maar dit werkt wel.

Zet in je artikeltabel een veld mutatie, type text

Vul een variabele met daarin de huidige datum en de huidige user (neem aan dat ze in moeten loggen), dan krijg je iets als driek20020321150500 (dus user driek op 21 maart 2002 om 15:05:00 en vul bij je insert van het artikel het veld mutatie daarmee. Vervolgens doe je een select met diezelfde string op je artikeltabel en je hebt op zeker hetzelfde record. 1 user die in 1 seconde tijd 2x een artikelnummer insert is een knappe.

Het zou mooier zijn als je iets als @@IDENTY had, maar geloof dat dat in Access niet bestaat.

  • Dope-E
  • Registratie: Januari 2001
  • Laatst online: 08-09 13:23

Dope-E

The one and only Dope

kun je niet gewoon SELECT MAX(id) doen :?

twitter.com/curly_sanders


  • ParaNoiMia
  • Registratie: Mei 2000
  • Laatst online: 05-09 11:47
Op vrijdag 22 maart 2002 13:31 schreef Dope-E het volgende:
kun je niet gewoon SELECT MAX(id) doen :?
Dat is minder veilig als je meerdere gebruikers tegelijkertijd artikelen laat toevoegen. Als je zeker weet dat dat er maar 1 is, zou het wel kunnen..
Pagina: 1