Beitrag von Jürgen (614 Beiträge) am Sonntag, 7.Dezember.2003, 22:18.
@PerlProfis- Nummernkreise/Letzten Datensatz
Antworten
Beitrag von Oliver ;-) (82 Beiträge) am Dienstag, 9.Dezember.2003, 08:19.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hallo Jürgen,
ich dachte ich hätte es verstanden. Aber beim wiederholten lesen habe ich es doch nicht verstanden. Was willst du genau?
Grüße
Oliver ;-)
Antworten
Beitrag von Jürgen (614 Beiträge) am Dienstag, 9.Dezember.2003, 15:01.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hi Oliver,
hmm, ;-)
Ich habe ein Eingabeformular(1) das beim schreiben in die DB den letzten
geschriebenen Datensatz die Kartennummer holt und um 1 erhöht.
Jetzt ist das aber so, das ich Datensätze mit einem anderem Eingabeformular(2)
schreiben kann - hier wird die Kartennummer von mir selbst eingegeben Z.B 150000.
So, jetzt wäre das der letzte Datensatz für das Eingabeformular(1) und würde diesen
beim schreiben um 1 erhöhen. Das darf nicht sein!!
Eigentlich sollte der letzte Datensatz gehohlt werden, der mit Eingabeformular(1) eingtragen wurde.
Hoffe, hab mich nicht zu umständlich ausgedrückt ;-)
Gruß
Jürgen
Antworten
Beitrag von hempelr (1976 Beiträge) am Dienstag, 9.Dezember.2003, 16:59.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hallo, Jürgen
also wenn alle Eingabeformulare auf ein und dieselbe Datenbank arbeiten, ist dein Problem so generell nicht lösbar (das geht aber so bei keiner Datenbank und selbst unter dem wunderprächtigen Excel mit der max-Funktion nicht..)
Also solltest du entweder zwei Felder nutzen, eine für Nummernkreis 1 und eine für Nummernkreis 2 oder aber ne andere Datenbank, die den letzten Wert aus dem Eingabeformular(1) mit speichert (und nur diesen) und dann per Relation als letzten Datensatz den mit der hier gespeicherten Nummer aus der "Arbeitsdatenbank" holt...
Wobei ich persönlich die zweite Variante bevorzugen würde, sone Art "Zwischenspeicherdatenbank" ist ziemlich universell und da sie nie viel Datensätze beinhaltet, kann man ne Menge Felder als Zwischenspeicherfelder einbauen, alle sortiert und die Performance ist immer absolut allereste Sahne.
hth
Ruben
Antworten
Beitrag von Jürgen (614 Beiträge) am Donnerstag, 11.Dezember.2003, 10:18.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hi Ruben,
merci für den Tipp. Ich hab zwei DB's (NrKreis1 u. NrKreis2) angelegt.
Hier hole ich dann über Eingabeformular(1) die letzte Nummer aus DB NrKreis1
und lasse beim putten die Member DB und NrKreis1 die neu Nummer schreiben.
Das wars ;-)
Gruß
Jürgen
Antworten
Beitrag von chris (19 Beiträge) am Freitag, 30.Juli.2004, 11:38.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hi also da ich das gleiche problem habe wie du und eine lösung gefunden habe ohne zwei felder zu benutzter möchte ich natürlich dies nicht vorenthalten.
Also wenn du folgendes Beispiel hast.
Nummernkreis1 : 1000 - 1999
Nummernkreis2 : 2000 - 2999
Nummernkreis2 : 3000 - 3999
usw.
es ist egal wie viele nummernkreise du hast du must nur wissen wann der näste anfängt. Den letzten nummernkreis kannst du mit Select SELECT MAX(ID) FROM benutzer verwenden.
Mit der folgenden Abfrage erhälst du die letzte id vom nummernkreis1:
select id, name from benutzter where id<'2000' order by id desc
Damit ist dein erster datensatzt die letzt id vom nummernkreis 1 weil die id kleiner ist als 2000 und durch das DESC ist es absteigend sortiert.
Für nummernkreis 2 würde das dann so ausehen:
select id, name from benutzter where id<'3000' order by id desc
Ich hoffe das ich mit der kleinen lösung eure probleme lösen konnte
Viel spaß noch
Gruß Chris
Antworten
Beitrag von horstees (229 Beiträge) am Dienstag, 9.Dezember.2003, 20:01.
Re: @PerlProfis- Nummernkreise/Letzten Datensatz
Hi Jürgen,
erhöhe doch einfach nicht 'beim' Schreiben
sondern direkt danach.
Mach ein normales put
direkt anschließend ein 'mod' mit $_get{kartennr}+1.
Wird wohl kaum jemand die Zwischenzeit ausnutzen
um dir mit dem zweiten Formular noch einen
anderen datensatz dazwischenzuhauen ;-)
horstees
Antworten