Kay. Hvis det havde været 2005, ville jeg lige vupti kunne have smidt dig en stump sql der kunne gøre det, men med 2000 skal jeg lige tænke mig om. Har godt set problemstillingen løst før, og så i noget kode der kan køre på 2000... Jeg skal lige tænke.
Denne skulle vist fungere. Jeg har antaget, at din kolonne med records er en VARCHAR(100)... Hvis den derimod er en BIGINT, så skal du lige fjerne en CAST fra dette.
Løsningen er ikke særlig elegant, da den blot laver en cursor, og looper igennem alle 100.000 rækker, og opdaterer dem én ad gangen. Hvis det er en one-timer, så er det fint nok - men hvis det skal gøres tit og ofte, så skal man nok lige finde noget lidt pænere. Men here goes:
---------------------------------------- /* I nedenstående skal "tableName" rettes til hvad din tabel nu hedder */
DECLARE @PassNO INT DECLARE @counter BIGINT SET @counter = 251091108800000001
DECLARE myCursor CURSOR FOR SELECT PassNO FROM tableName ORDER BY PassNO
OPEN myCursor
FETCH NEXT FROM myCursor INTO @PassNO
WHILE (@@FETCH_STATUS = 0) BEGIN UPDATE tableName SET record = CAST(@counter AS VARCHAR(100)) --fjern evt CAST'en WHERE PassNO = @PassNO
SET @counter = @counter + 1
FETCH NEXT FROM myCursor INTO @PassNO END
CLOSE myCursor DEALLOCATE myCursor ----------------------------------------
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.