פונקציות עזר לחקירת טבלאות מערכת

09/03/2011

אין תגובות

כדי להגיע למידע שאינו נשמר במישרין בטבלת מערכת כלשהי- יש לבצע Join בינה לבין טבלאות מערכת אחרות שמשלימות את החסר, ומהן הלאה לעוד טבלאות; ולעיתים זה יוצר שאילתות מסורבלות למדי שתפקידן אינו לשלוף את המידע השמור בדטבייס אלא בסך הכל מטה-דטה, מידע על המידע.
ב-SQL Server יש די הרבה פונקציות עזר שמאפשרות לקצר הליכים ולהגיע למטה-דטה יותר בקלות. לא משהו שלא ניתן להגיע אליו אחרת, אלא קצת פחות קוד מסורבל..
להלן מספר דוגמאות המדברות בעד עצמן:

Select Schema_Name(Schema_ID) Schema_Name,

        Object_Name(parent_object_id) parent_Object_Name,

        *

From sys.objects;

clip_image002

Select Object_Name(object_id) Object_Name,

        Schema_Name(ObjectProperty(object_id,'SchemaId')) Schema_Name,

        Type_Name(system_type_id) Type_Name,

        Type_Name(user_type_id) User_Type_Name2,

        Object_Name(default_object_id) Default_Constraint_Name,

        Object_Name(rule_object_id) Rule_Constraint_Name,

        *

From sys.columns;

clip_image004

Select Object_Name(object_id) [Object_Name],

        ObjectPropertyEx (object_id,'BaseType') Object_Type,

        Schema_Name(Cast(ObjectPropertyEx (object_id,'SchemaId') As Int))

        Schema_Name,

        Col_Name(object_id,Column_id) Column_Name,

        *

From sys.index_columns

Order By Object_Name(object_id),

        Index_Id,

        key_ordinal;

clip_image006

הוסף תגובה
facebook linkedin twitter email

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *