• I, too, don't have a problem with a cursor per se here; it could be done w/o one, but it's not a big deal for such a limited number of rows.

    You should get away from "sysusers", which is also obsolete, but again that's not a killer issue either.

    But, the cursor should be optimized with FAST_FORWARD:

    ...

    declare updateServerroles cursor fast_foward for SELECT name FROM sysusers where name = 'TEST\user'

    ...

    Edit: Corrected typo.

    SQL DBA,SQL Server MVP(07, 08, 09) "It's a dog-eat-dog world, and I'm wearing Milk-Bone underwear." "Norm", on "Cheers". Also from "Cheers", from "Carla": "You need to know 3 things about Tortelli men: Tortelli men draw women like flies; Tortelli men treat women like flies; Tortelli men's brains are in their flies".