2008-10-07 6 views
6

Ich habe eine Anzahl von unterordneten Tabellen, die einen Fremdschlüssel zu einer übergeordneten Tabelle haben.Erhalten Sie den Primärschlüssel eines neuen Eintrags

Wie füge ich einen Eintrag in der übergeordneten Tabelle hinzu und erhalte den Primärschlüssel dieses Eintrags, damit ich dann Zeilen in den untergeordneten Tabellen eingeben kann, die auf den Eintrag in der übergeordneten Tabelle zeigen?

Ich mache dies in einer MS Access-Datenbank von einer C# -Anwendung.

+0

Sie verwenden keine Access-Datenbank, sondern eine Jet-Datenbank. Access ist eine Anwendungsentwicklungsplattform, während Jet das Datenbankmodul für den Datenspeicher ist, das in Access standardmäßig verwendet wird. –

+0

Bereits beantwortet (wobei die Anzahl der referenzierenden Tabellen eins ist). Siehe: [http://stackoverflow.com/questions/151905/best-way-to-make-double-insert](http://stackoverflow.com/questions/151905/best-way-to-make-double- Fügen Sie "Beste Methode zum doppelten Einfügen" ein – onedaywhen

Antwort

5

Microsoft Access 2000 oder höher unterstützt die Eigenschaft @@ IDENTITY zum Abrufen des Werts eines Autowert-Felds nach einem INSERT. (msdn)

Edit: This ist der Link zu einem ähnlichen Artikel für .NET 3.5

+0

-1 für die Verweise auf veraltete Informationen. Der .NET 3.5 Abschnitt erwähnt dies nicht. – leppie

+0

Leppie, das Schreiben der aktualisierten Informationen wäre großartig gewesen !! –

+0

Ein 3.5-Link hinzugefügt, der auf der ursprünglich verlinkten Seite verfügbar ist. – Instantsoup

3

Versuchen Sie, in den globalen Variablen suchen, die Ihnen den Identitätswert. In SQL Server ist es:

SELECT @@ identity

Schauen Sie auch in die SCOPE_IDENTITY() Funktion

1

sollten in der Lage sein @@ IDENTITY auf SELECT, auch wenn Sie eine zweite Abfrage verwenden müssen zu tun damit. Ich glaube nicht, dass MS Access es erlauben wird, es zu einer Abfrage zu kombinieren.