יום שני, 28 באפריל 2008

SYNONYM

בעיה:
ב- SQL server 2000 כאשר היינו רוצים לתת כינוי לאובייקט (מסיבות של אבטחה – כאשר לא רוצים לחשוף למשתמש את השם של המקורי של הטבלה, או מטעמי נוחות) - בבסיס הנתונים לא היה פתרון מובנה .
הפתרון העקיף בגרסת 2000 הייתה ע"י יצירת שאילתא שקוראת לטבלה, או לחילופין שימוש בפרוצדורה sp_rename .

האם ל- SQL SRVER 2005 יש פתרון מובנה ?

פתרון:
את היתרונות והיכולות החדשות בפלטפורמת SQL Server 2005 הינה – SYNONYM.
SYNONYM הינה היכולת שלנו כ- DBA לתת כינוי לאובייקט אחר בבסיס הנתונים (טבלה, פרוצדורה, שאילתא, פונקציה).

אופן יצירת ה- SYNONYM:
1. בתוך בסיס הנתונים הרצוי, יש synonyms ß קליק ימני ובחירת new synonyms
2. ונפתח המסך הבא – יצירת ה- synonyms


כמו-כן, ניתן ליצור synonyms גם ע"י פקודות T-SQL :

USE [AdventureWorks]
GO
CREATE SYNONYM [dbo].[emp_syn] FOR
[itaib-pc].[AdventureWorks].[HumanResources].[Employee]


ולאחר-מכן, ניתן להריץ פקודות T-SQL רגילות על SYNONYM , לדוגמא:
--select from the original table
select * from HumanResources.Employee

--select from the SYNONYM
select * from dbo.emp_syn


בהצלחה !!

אין תגובות: