When I exec the following:
DBCC CHECKDB (DBNAME) WITH NO_INFOMSGS;
I am receiving numerous errors similar to the ones that follow.
Msg 8992, Level 16, State 1, Line 1
Check Catalog Msg 3853, State 1: Attribute (object_id=12331604) of row (object_id=12331604,parameter_id=1) in sys.parameters does not have a matching row (object_id=12331604) in sys.objects.
I have determined that there are numerous records in the sys.parameters view which do not have a corresponding record in the sysobjects view.
select * from sys.parameters param WHERE not exists (select 1 from sys.objects obj where obj.object_id = param.object_id) -. This returns almost 1000 records.
I am guessing at this point. I believe there were a number of records deleted from system table in a previous version of SQL which was possible but not recommended and the parameters were not deleted.
Is there a way to clean these up with out rebuilding a database?