It is an interesting exercise, but doesn't really accomplish anything anyone would encounter in the real world. BREAK is an interesting SQL keyword, did not know that. Also beware the @k red-herring-of-sort; one would want to wonder if a logical reduction couldn't (shouldn't) occur.
On the contrary, I use it reasonably often when I need looping logic for administrative purposes or for complex row-by-row logic.
Structure is typically as follows
WHILE 1 = 1 --Always true, so enter the loop
SELECT TOP 1
@CurrentRecordID = RecordID
WHERE RecordID > @CurrentRecordID --Get the next record
ORDER BY RecordID
IF @@ROWCOUNT = 0
--No rows left so break out of loop
--perform looping logic