Darkstorm Geschrieben 7. März 2002 Geschrieben 7. März 2002 Also wieder mal! ich hab hier meine Kundennummern, die wie folgt aufgebut sind: CL-00117. sie sind als varchar(20) festgelegt, allerdings nicht von mir. Ich soll diese nummer erhöhen. hab auch schon viele ideen und viele neue befehle erforscht, aber wie sage ich einem varchardings, dass es sich um eins erhöht? Falls jemand antwortet, Danke!!! Dark ach ja MSSQL 2000 ist meine grundlage Zitieren
robotto7831a Geschrieben 7. März 2002 Geschrieben 7. März 2002 Hallo, meines Wissens nach, ist es nicht möglich Textfelder zu erhöhen. Du wird wohl irgendwie mit PHP oder einer anderen Scriptsprache den Wert aus dem Textfeld auslesen müssen und dann die letze Zahl erhöhen und dann wieder speichern. Bis dann. Frank Zitieren
Darkstorm Geschrieben 7. März 2002 Autor Geschrieben 7. März 2002 na super. geht es nicht vielleicht auch mit nem convert oder cast befehl? da hab ich ja ne tolle aufgabe vom cheffe gekriegt. machense ma ebent!!! Dark Zitieren
schnitzel21m Geschrieben 7. März 2002 Geschrieben 7. März 2002 willst du deinen nummer stetig um eins erhöhen oder einmalig? du kannst über ein sql-script dein char so abschneiden, dass du nur noch die zahlen hast! dann machst du über die convert-funktion aus dem char ein int... dann kannst du dein teil erhöhen wie du bock hast! nach dem erhöhen wieder als char deffinieren/convertieren un dann deine buchstaben anfügen... is ziemlich umständlich un würd ich net machen. Zitieren
Darkstorm Geschrieben 7. März 2002 Autor Geschrieben 7. März 2002 Egal ob umständlich oder nicht, wie geht das ??? ich baue nur recht umständliche konstrukte. liegt wohl an meinem kranken hirn. also: wie schneidet man nen char ab? es soll ab und an ein skript durchlaufen, was neue daten in meine tabelle einfügt und dann die nummern, die noch nicht gesetzt sind neu basteln, ab der höchsten vorhandenen. Danke danke schon mal Dark Zitieren
schnitzel21m Geschrieben 7. März 2002 Geschrieben 7. März 2002 select x = substring (KundenNr, 2,6) ...das heißt, das du in x den wert von kundenNr speicherst...beginnend beim zweiten buchstaben beginnend und sechsbuchstaben lang! 2 = beginn 6 = wieviele buchstaben! Zitieren
Darkstorm Geschrieben 8. März 2002 Autor Geschrieben 8. März 2002 es hat funktioniert. :D :D Jetzt muss ich die Daten nur wieder in varchar zurückkonvertieren und das mit in die tabelle packen. das kann ja nicht so schwer sein, nach dem rest. falls es jemanden interessiert, wie ich es gemacht habe, hier mal der quelltext declare @x int declare @z int declare @Kundennumm int declare Kundennumm_cursor cursor for select cast (SUBSTRING(Kundennumm, 4, 5) as int) from KUNDE order by Kundennumm open Kundennumm_cursor fetch next from Kundennumm_cursor into @Kundennumm set @x = (select max (cast (SUBSTRING(Kundennumm, 4, 5) as int)) as Kundennumm from KUNDE) while @Kundennumm is null begin set @Kundennumm =@x + 1 PRINT @Kundennumm set @x = @Kundennumm fetch next from Kundennumm_cursor into @Kundennumm end close Kundennumm_cursor deallocate Kundennumm_cursor go gruß Dark Zitieren
hades Geschrieben 8. März 2002 Geschrieben 8. März 2002 Bitte waehle das naechste Mal einen passenderen Threadtitel. Nichtsaussagende Threadtitel werden gern ueberlesen. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.