Hallöchen…
Ich kenne von MySql die Funktion LastInsertID()…
Gibts sowas auch für Access(>2000)? Ich hab bisher nur DLOOKUP oder ein select max_id() gefunden…
Wäre schön wenn jemand eine Idee dazu hat…
Grüsse Micha
Hallöchen…
Ich kenne von MySql die Funktion LastInsertID()…
Gibts sowas auch für Access(>2000)? Ich hab bisher nur DLOOKUP oder ein select max_id() gefunden…
Wäre schön wenn jemand eine Idee dazu hat…
Grüsse Micha
Habs schon gefunden, sorry!
Access generiert automatisch die nächste Nummer in einem recordset, daher braucht man da nix extra zu programmieren… Ich habs nun so gelöst:
Function addKatalog(KatName as String)
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim LastID As Long
Set db = CurrentDb()
Set rs = db.OpenRecordset("tbl\_Katalog", dbOpenDynaset)
rs.AddNew
rs![KatName] = [tmpName]
LastID = rs![KatID]
rs.Update
db.Close
addKatname = LastID
End Function
LastInsertID unter Access?
Sehr schlechte Lösung
Da ich die Werte anschliessend in eine Kombo-Feld einfüge um ein Unterformular zu steuern, hat das mit der letzten eingefügten ID nicht hin… Ich glaub ich werde zusätzlich noch eine Spalte für die Nummerierung einfügen müssen
Hallo Michael,
Sehr schlechte Lösung
?? sorry, warum?
Da ich die Werte anschliessend in eine Kombo-Feld einfüge
Werte? Mehrzahl? Eine Tabelle liefert nur einen Wert?
um ein Unterformular zu steuern,
? könntest du mal genauer beschreiben, was du da eigentlich machen willst?
hat das mit der letzten
eingefügten ID nicht hin… Ich glaub ich werde zusätzlich
noch eine Spalte für die Nummerierung einfügen müssen
ich habe den Verdacht, dass du auf dem Holzweg bist…
Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Hallo Wolfgang…
ich habe den Verdacht, dass du auf dem Holzweg bist…
Manchmal glaub ich, das ist mein karma
Also ich habe 2 Tabellen die eine 1:n-Beziehung haben.
Hier mal ein Beispiel:
Tab1: ID, KatalogName
Tab2: ID, KatalogID, uvm.
Den Namen aus Tab1 habe ich in einem Kombo-Feld auf einer Form. Diese Form hat eine Unterform in der die Daten aus Tab2 verknüpft über die KatalogID angezeigt werden sollen.
Ich füge dann über eine andere Form Daten in beide Tabellen ein, als erstes einen neuen Katalognamen und wenn der eingetragen ist, würde ich gerne die ID davon in das Feld KatalogID in Tab2 schreiben…
Ich weiss, ich denk manchmal um 3 Ecken, hoffentlich ists nu ausführlich genug…
Ich hab festgestellt, das es mit der Funktion doch funktioniert…
Aber vielleicht ist das ja viel zu kompliziert und jemand hat eine einfachere Lösung?
Danke schon mal…
Grüsse Micha
Hallo Michael,
ich habe den Verdacht, dass du auf dem Holzweg bist…
Manchmal glaub ich, das ist mein karma
*trost* Jeder Holzweg hat einen Anfang, aber auch ein Ende
Also ich habe 2 Tabellen die eine 1:n-Beziehung haben.
Hier mal ein Beispiel:
Tab1: ID, KatalogName
Tab2: ID, KatalogID, uvm.
Du solltest in beiden Tabellen immer die gleichen Bezeichnungen für ID-Felder nutzen. Z.B.
Tab1: Katalog_ID, KatalogName
Tab2: Teile_ID, Katalog_ID, uvm.
Dadurch behält man einen besseren Überblick.
Den Namen aus Tab1 habe ich in einem Kombo-Feld auf einer
Form.
Hauptformular!
Datenbasis = Tab1
Anzeige des Katalognamen in einem >>> Textfeld
Hallo Wolfgang,
Vielen Dank für Deine ausführliche Information, hat mir schon sehr weitergeholfen…
Ich füge dann über eine andere Form Daten in beide Tabellen
ein,warum denn das?
Das rührt daher, dass ich den neuen Datensatz nicht einfach eingebe sondern über eine Funktion einlesen lasse. Ich habe einen Button „Neuer Datensatz“ über den dann ein FileDialog geöffnet wird, ein Verzeichnis ausgewählt und in diesem die Dateien auf Ihre Attribute analysiert werden . Die Ergebnisse trage ich dann in die DB ein, ohne sie vorher nocheinmal anzuzeigen…