MqSQL
-
Hi!
Hab wieder mal n Prob:
Also die folgende Abfrage soll mir die höchste id aus der Datenbank liefern und die um 1 erhöhen, sodass ich die dann in einem neuen Datensatz speichern kann. Allerdings wird als id immer 1 ausgegeben, obwohl die höchste id 8 ist...
hier mal der Code:<?PHP $db=mysql_connect(); $sql="SELECT * FROM member ORDER BY id DESC LIMIT=1"; $res= mysql_query ($sql, $db); $ligne = mysql_fetch_object ($res); $id=$ligne->id; $id++; $sql1="INSERT INTO member (nick, status, icq, mail, rang, id) VALUES ('$nick', '$status', '$icq', '$mail', '$rang', '$id')"; mysql_query($sql1, $db); ?>
cya,
Master Death
-
Entweder SELECT MAX(id) FROM member oder (das ist wohl die bessere Variante) gleich auto_increment
-
Also mit MAX(id) funktioniert das irgendwie nicht und über auto_increment find ich nichts, könnte mir da noch jemand helfen?
-
wenns nicht funktioniert, dann machs richtig
und wenn du zu auto_increment nix findest, dann such mal danach.btw:
was heisst denn 'funktioniert nicht' - kocht er statt das richtige auszugeben dir einen kaffee? wenn ja, dann lad dir mal das neueste update für deine kaffeemaschine runter...wo hast du denn nach auto_increment gesucht?
sicher nicht auf google und auch nicht in dem MySQL Manual und in dein SQL Buch hast du auch nicht rein gesehen...
-
auto_increment ist ein Spaltentype in MYSQl und auch anderen DB`s.
Hier wird von dir nichts eingetragen. Dies macht das DBMS selbst. Und zwar wird dise immer um einen Wert erhöht.
z.B. 1 2 3 4 5 6
Wird meist verwendet um einen eindeutigen Datensatzbezeichner zu bekommen der in einer DB lebenswichtig ist. auto_increment-Werte sind nie gleich da sie UNIQUE sind. auto_increment sind UINT 10 .