Erste Schritte der letzte Wert auto-increment in mysql eingefügt
Well, let's go schnelle Post heute.
In MySQL gibt es viele Banken und eine auto increment, dass für die primären Schlüsselfelder der Tabellen verwendet wird, verhindert, dass es zwei Datensätze mit dem gleichen Code.
In MySQL, kann der Benutzer nicht im Voraus wissen, auf eine sichere Weise, die den nächsten Wert, der für den auto increment-Feld in einer Tabelle generiert werden. Erst nach dem Einsetzen eines Datensatzes in der Tabelle ist, dass wir wissen. In PHP, zum Beispiel, gibt es die Funktion mysql_insert_id, dass der Wert für den auto increment-Feld in der letzten INSERT-Befehl ausgeführt erwirtschafteten Renditen. Dies ist nützlich, wenn wir, um Datensätze in einer anderen Tabelle, die auf den Datensatz, der eingefügt wurde, zum Beispiel im Zusammenhang werden auch brauchen, wenn wir einen anderen Tisch und Verkauf item_venda haben. Ein Verkauf Tabelle wird in der Regel ein Feld auto increment cod_venda. Und um einen Verkauf zu registrieren, benötigen wir mindestens einen Punkt des Kaufs, die auf den Verkauf, die eingegeben wurde verwandt ist enthalten. Um diese Beziehung, wird die Tabelle haben in der Regel ein Feld item_venda cod_venda zu diesem Verein zu machen, so dass der Tisch cod_venda item_venda sollte der Wert auto increment-Feld cod_venda Tabelle Verkauf haben. Also für die, die wir in PHP Funktion zu nutzen mysql_insert_id.
Aber auch in anderen Sprachen wie Delphi, gibt es eine ähnliche Funktion wie der PHP mysql_insert_id damit, wie die auto increment Wert von der letzten INSERT generiert zurückkehren? Einfache, verwenden Sie die SQL SELECT LAST_INSERT_ID ();. Unabhängig von der Programmiersprache, die Sie verwenden, wird diese Arbeit. Sie können sogar eine Funktion namens mysql_insert_id der Programmiersprache Sie die oben gezeigte SQL ausführen und dann nur die Funktion aufrufen, wenn gewünscht. Siehe Beispiel in Delphi mit den Komponenten dbExpress:
Funktion mysql_insert_id (SQLConnection: TSQLConnection): Integer;
var SQLDataSet: TSQLDataSet;
beginnen
Result: = 0;
SQLDataSet: TSqlDataSet.Create = (nil);
versuchen
SqlDataSet.SQLConnection: = SQLConnection;
SqlDataSet.CommandText: = 'SELECT LAST_INSERT_ID ()';
SqlDataSet.Open;
Result: = SqlDataSet.Fields [0]. AsInteger;
SqlDataSet.Close;
schließlich
SqlDataSet.Free;
end;
end;
Zum Aufruf der Funktion muss ein Objekt der Klasse TSQLConnection durch Parameter, die die Verbindung steht, um die Datenbank zu übergeben.
Ich hoffe, es ist sinnvoll, da es für mich war.
T +
Verwandte Beiträge:
- Update mit Join in MySQL
- Ohne Foreign Key Constraints in MySQL (drop constraint)
- Kleinbuchstaben Identifikatoren in MySQL unter Windows
- Mit Werkzeugen von der Kommandozeile von MySQL
- MySQL 5 und Firebird in Delphi 2007 mit zwei dbExpress
Ähnliche Beiträge, die Ihnen vom Yet Another Related Posts Plugin .






Dieser Artikel hat eine enorme Hilfe für mich.
Big hug!
GMN Gesicht nambahin otomatis kode, kode mis "A0001" knock sy Entri Datum setiap kode akan i2 nambah welken otomatis JD "A0002". Tolong Yach ..?
Sorry, ich nur verstehen und Portugiesisch Português.