Synonms are a great feature of SQL Server (introduced in version 2005). I’m using them in most of my projects for staying independent of database names (eg. when using a table stored in the staging area database in a procedure stored in the datawarehouse database).
Synonms work fine with SELECT, INSERT, UPDATE, DELETE and EXECUTE statements.
Unfortunatly this list does not contain TRUNCATE TABLE (which I prefer instead of DELETE because of performance reasons). But mixing synonyms and original names, using synonyms in some places, but original names in other places, would be a nonsens (I would get independent of database names in some places only, but not in others).
Here comes my workaround:
Read More »