معرفی Schema در SQL Server

جمعه 13 آذر 1394

Schema ظرف یا Containerای است که کلیه اشیاء یک بانک اطلاعاتی را در برمی گیرد. هدف استفاده از Schema، قرار گرفتن اشیاء مختلف بانک اطلاعاتی مثل جداول و ... درون آن است، در واقع بوسیله Schema می توانیم، اشیاء مختلف بانک اطلاعاتی را دسته بندی کنیم.در این مقاله می خواهیم مفاهیم و نحوه کار با Schema را توضیح دهیم.

معرفی Schema  در SQL Server

یکی دیگر از دلایل استفاده از Schema، پیاده سازی کنترل های بیشتر روی امنیت بانک اطلاعاتی است. که البته این امکان از SQL server 2005 اضافه شده است.

یکی از قابلیت های استفاده از اسکیما در sql مدیریت سطح دسترسی کاربران بر روی Object های قرار گرفته در آن Schema می باشد. برای تمامی Object های قرار گرفته در یک schema در پایگاه داده از قبیل جداول، رویه های ذخیره شده(stored procedure) و ... پیشوندی هم نام Schema تعیین می گردد. به طور مثال اگر نام جدول بانک اطلاعات شما yourtable و نام اسکیمایی که بانک را در آن قرار داده اید myschema باشد، در آخر جدول شما با نام ذیل مشخص می گردد.

Myshema.yourtable

با توجه به این نکته می توان جداولی هم نام در یک بانک اطلاعاتی در اسکیما های متفاوت داشت.

تمام اشیاء در schema باید یک نام منحصر به فرد داشته باشند و همچنین نام schema باید در پایگاه داده منحصر به فرد باشد.

چگونه می توان Schema ایجاد کرد:

Syntax( نحو):

Create Schema Schema_Name <Schema element>Data types  

مثال:

    CREATE TABLE Product1    
    (    
       iProductID INT IDENTITY(1,1)     
       ,vProductName VARCHAR(100) NOT NULL    
       ,vManfacturer VARCHAR(100) NOT NULL    
       ,LastUpdated DATETIME DEFAULT GETDATE() ,    
       PRIMARY KEY (iProductID, vManfacturer, vProductName)    
        
    )  

مثال Schema ایجاد شده: یک schema به صورت زیر ایجاد می شود:

 

یک بار schema ایجاد شده و شما می توانید هرنوع SQL query مانند Update، Alter، Insert، Delete و یا Drop را انجام دهید.

 مثال : ما در اینجا از کوئری Insert استفاده کرده ایم:

    INSERT INTO Product1(vProductName, vManfacturer) VALUES('Television','Samsung')  

 

 

 

چگونه می توان Drop را در Schema انجام داد؟

برای drop schema از syntax داده شده در زیر استفاده می کنیم:

DROP Schema Schema_Name 

برای مشاهده Schema Change History( تاریخچه تغییرات Schema) مراحل زیر را انجام دهید:

در مرحله اول، به Server Object Explorer خود رفته و بر روی سرور انتخاب شده راست کلیک کنید. حالا Reports را انتخاب کرده بعد آن Standard Reports، سپس بر روی گزینه Schema Change History کلیک کنید به صورت زیر:

 

یک تب query جدید با وضعیت تمام دستورات DDL اجرا شده، نام پایگاه داده، تاریخچه(از زمان تاریخ و زمان)، Type، جزییات عملیات DDL با زمان به صورت زیر باز خواهد شد:

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید