Bestimmen der Identität neu erstellter Datensätze in MySQL
Bei der Arbeit mit Datenbanken ist es häufig erforderlich, die eindeutige Kennung abzurufen, die neu erstellten Datensätzen zugewiesen wird . In SQL Server dient die Funktion SCOPE_IDENTITY() diesem Zweck. Wenn Sie jedoch MySQL verwenden, unterscheiden sich dessen Funktionen.
Äquivalenz in MySQL: LAST_INSERT_ID()
Das MySQL-Äquivalent von SCOPE_IDENTITY() ist LAST_INSERT_ID() Funktion. Es ruft die ID des letzten von der Datenbank generierten automatischen Inkrementierungswerts ab.
Beispielverwendung
CREATE TABLE Product ( ProductID INT AUTO_INCREMENT PRIMARY KEY ); INSERT INTO Product (Name) VALUES ('New Product'); # Get the ID of the newly created record SELECT LAST_INSERT_ID();
Diese Abfrage gibt die Produkt-ID des neu eingefügten Datensatzes zurück.
Hinweis zu ausgelösten Einfügungen
Das ist wichtig zu beachten LAST_INSERT_ID() gibt die ID des letzten automatischen Inkrements zurück, das innerhalb der aktuellen Sitzung oder Transaktion generiert wurde. Bei Einfügetriggern, die zusätzliche Einfügungen durchführen, gibt LAST_INSERT_ID() die ID der Originaltabelle zurück, nicht die Tabelle, in die während des Triggers eingefügt wurde.
Schlussfolgerung
Das Verständnis des MySQL-Äquivalents der SQL Server-Funktionen ist entscheidend für die effektive Arbeit mit plattformübergreifenden Datenbankanwendungen. Durch die Verwendung von LAST_INSERT_ID() können Sie die Identität neu erstellter Datensätze in MySQL abrufen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3