In 2005, an object's owner is schema owner by default. It can be changed to other principals by "ALTER AUTHORIZATION", in this case, the principal_id will not be null i the sys.objects table. To get table (view, SP,udf, etc) owner:
SELECT
o.object_id, o.name,
CASE WHEN principal_id is NOT NULL THEN (SELECT name FROM sys.database_principals dp WHERE dp.principal_id=o.principal_id)
ELSE (SELECT dp.name FROM sys.database_principals dp,sys.schemas s WHERE s.schema_id=o.schema_id and s.principal_id=dp.principal_id)
END as Owner
FROM
sys.objects o
WHERE
type='U'
GO
E.g.:
USE AdventureWorks
GO
select
* FROM sys.objects where type='U'
select
* from sys.schemas
SELECT
* from sys.database_principals
GO
SELECT o.object_id, o.name,
CASE WHEN principal_id is NOT NULL THEN (SELECT name FROM sys.database_principals dp WHERE dp.principal_id=o.principal_id)
ELSE (SELECT dp.name FROM sys.database_principals dp,sys.schemas s WHERE s.schema_id=o.schema_id and s.principal_id=dp.principal_id)
END as Owner
FROM
sys.objects o
WHERE
type='U'
GO
Change one table owner to guest:
ALTER
AUTHORIZATION ON Production.ProductSubcategory TO guest
GO
SELECT o.object_id, o.name,
CASE WHEN principal_id is NOT NULL THEN (SELECT name FROM sys.database_principals dp WHERE dp.principal_id=o.principal_id)
ELSE (SELECT dp.name FROM sys.database_principals dp,sys.schemas s WHERE s.schema_id=o.schema_id and s.principal_id=dp.principal_id)
END as Owner
FROM
sys.objects o
WHERE
type='U'
GO
Restore the table owner to schema owner:
ALTER
AUTHORIZATION ON Production.ProductSubcategory TO schema owner
GO