• You don't need a cursor; run this from the db you want to collect information on.

    SELECT

    sdp2.[name] as DBUser, sdp2.type_desc as DBUserType,

    sdp1.[name] as DBUserRole, sdp1.type_desc as DBUserRoleType

    FROM sys.database_role_members drm

    LEFT JOIN sys.database_principals sdp1 on drm.role_principal_id=sdp1.principal_id

    LEFT JOIN sys.database_principals sdp2 on drm.member_principal_id=sdp2.principal_id

    ORDER BY

    sdp2.name,sdp1.name


    Cursors are useful if you don't know SQL