I came accrossacross this old post looking for the same answer. There is an easier way without torpedoing all replcationreplication.
After running sp_dropsubscriptionsp_dropsubscription you must run a cleanup sprocstored procedure at the subscriber.
So, after running this. USE PubliserDB GO exec sp_dropsubscription @publication = N'MyPublication', @subscriber = N'SubscriberServer', @destination_db = N'SubscriptionDatabase', @article = N'all':
USE PublisherDB GO exec sp_dropsubscription @publication = N'MyPublication', @subscriber = N'SubscriberServer', @destination_db = N'SubscriptionDatabase', @article = N'all'; You will need to run this. USE SubscriberDB GO exec sp_subscription_cleanup @publisher = N'PublisherServer', @publisher_db = N'PublisherDB', @publication = N'MyPublication':
USE SubscriberDB GO exec sp_subscription_cleanup @publisher = N'PublisherServer', @publisher_db = N'PublisherDB', @publication = N'MyPublication'; I hope this helps someone else. This removes any metadata from the subscriber. Until the cleanup is run the subscription will show up in Local Subscriptions.