कुछ एंटरप्राइज़ सिस्टम में, आपको दूरस्थ वस्तुओं से निपटना पड़ सकता है जिन पर आपका कोई नियंत्रण नहीं है। उदाहरण के लिए, एक डेटाबेस जो किसी अन्य विभाग या टीम द्वारा बनाए रखा जाता है।
समानार्थी आपके SQL कोड से अंतर्निहित ऑब्जेक्ट के नाम और स्थान को अलग करने में आपकी सहायता कर सकते हैं। इस तरह आप एक समानार्थी तालिका के विरुद्ध कोड कर सकते हैं, भले ही आप जिस तालिका को चाहते हैं उसे किसी नए सर्वर/डेटाबेस में ले जाया गया हो या उसका नाम बदल दिया गया हो।
उदाहरण के लिए, मैं इस तरह एक प्रश्न लिख सकता था:
insert into MyTable
(...)
select ...
from remoteServer.remoteDatabase.dbo.Employee
लेकिन फिर यदि सर्वर, या डेटाबेस, स्कीमा, या तालिका में परिवर्तन होता है तो यह मेरे कोड को प्रभावित करेगा। इसके बजाय मैं रिमोट सर्वर के लिए एक समानार्थी शब्द बना सकता हूं और इसके बजाय समानार्थी का उपयोग कर सकता हूं:
insert into MyTable
(...)
select ...
from EmployeeSynonym
यदि अंतर्निहित वस्तु स्थान या नाम बदलती है, तो मुझे नई वस्तु को इंगित करने के लिए केवल अपना पर्यायवाची शब्द अपडेट करना होगा।