Mailinglisten-Archive |
Lutz Zetzsche wrote:
> Hi Jörn,
>
> Joern Grube schrieb:
>> Ich generiere eine neue Kundennummer (unique in der Datenbank) aus einem
>> Kürzel, dem Datum und einem fortlaufenden Wert. Dazu hole ich mir die
>> letzte Kundennummer aus der Datenbank, zerlege die, zähle eins dazu und
>> setze sie wieder zusammen:
>>
>> $kdnrLast = explode("-", $row['all_ident_user']);
>> $kdnrLast = $kdnrLast[4];
>> $kdnrLast = $kdnrLast + 1;
>> $kdnrDat = date("Y-m-d");
>> $kuerzel = "MA";
>> $kdnr = $kuerzel."-".$kdnrDat."-".$kdnrLast;
>>
>> Dann schreib ich das mit allem anderen (Pw, Id) in die Datenbank. Das
>> funktioniert bis zehn, danach kommt folgendes:
>>
>> Antwort:
>> Duplicate entry 'MA-2005-07-05-10' for key 2
>> Fehlercode:
>> 1062
>>
>> Das es das Ding mit zehn hinten schon gibt, ist klar, aber er soll doch
>> eines addieren. Warum macht er das bis zehn und dann nicht mehr?
>> Die Spalte ist vom Typ
>> varchar(30) NOT NULL default ''
>> An der Länge kann es also auch nicht liegen. Ich hab nicht den mindesten
>> Schimmer, warum das so ist. Jemand von Euch vielleicht?
>
> steht denn auch in $row der zuletzt eingefügte Datensatz?
genau, bzw wie holst du denn den letzten Datensatz??
--
Sebastian Mendel
www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive