Не использовать sp_helplogins: используйте sys.server_principals
SELECT * FROM sys.server_principals WHERE name = 'bob'
Если вам нужен 2-й набор результатов sp_helplogins, вам придется использовать c # или что-то еще, потому что загрузка временной таблицы будет только перехватывать 1-й набор результатов.
Эквивалент sys.server_principals равен sys.database_principals тоже
К вашему сведению: db_owner уже есть в каждой базе данных. Что ты на самом деле пытаешься сделать ...?
Редактировать после комментария что-то вроде:
EXEC sp_MSForEachDb '
USE ?
IF DATABASE_PRINCIPAL_ID (''myloginname'') IS NOT NULL
EXEC sp_addrolemember ''db_datareader'', ''myloginname''
'