فرمت فایل : word (لینک دانلود پایین صفحه) تعداد صفحات 109 صفحه
بخشی از متن :
ایجاد یک پایگاه داده
برای ایجاد یک پایگاه داده جدید S Server 2000 یکی ازسه روش زیر را بکار برید
-ویزارد Database Creation
-برنامه Enterprise Manager
-دستور CREATE DATABASE
برای ایجاد یک پایگاه داده جدید یک کپی از پایگاه داده Model ایجاد می شود. پس از آن پایگاه داده به اندازهای درخواستی بسط مییابد و فضای اضافی با صفحات خالی تکمیل میشود.
دادههای پایگاه داده به شکل فیزیکی بر روی دیسک نگهداری می شوند. هنگام ایجاد یک پایگاه داده جدید لازم است حداقل یک فایل برای ذخیره دادهها و جداول سیستم و یک فایل دیگر برای نگهداری فایل تراکنشها مشخص کنید. پایگاه داده و فایل تراکنش میتوانند چندین فایل را به خود اختصاص دهند.
توجه: فایل های پایگاه داده نمی توانند با فایلهای سایر پایگاههای داده یا گزارش تراکنش به اشتراک گذارده شوند.
برای ایجاد یک پایگاه داده جدید می توانید Enterprise Manager را بکار برید. مراحل زیر را دنبال کنید:
1-برای شروع Enterprise Manager را از منوی Programs Start وSQL Server 2000 انتخاب کنید.
2-به نسخه SQL متصل شوید.
3-پوشه Database را بسط دهید
4-آیکون پوشه Database یا محلی از ناحیه راست را کلیک راست کنید و از منو گزینه New Database را انتخاب کنید.
5-در اینجا لیست Database Properties در برگه General قابل مشاهده است.
نام پایگاه داده را مشخص کنید. حال به برگه Data File بروید تا فایل جدید با اندازه اولیه یک مگابایت را در پوشه پیش گزیده …\Data مشاهده کنید. در بخش FileDatabase در انتهای دیالوگ، گزینه Automatically Grow قرار دارد.
حداکثر اندازه فایل نیز نا محدود (Unrestricted File Growth) مشخص شده است.
شکل زیر ناحیه سمت راست پایگاههای داده را نشان میدهد و گزینه منو امکان انجام عملیات را فراهم میکنند.
6- برای تغییر خواص فایلهای پایگاه داده، جعبه مناسب ر اکلیک کنید و تغییرات را اعمال نمایید. برای ایجاد سایر فایلهای پایگاه داده می توانید به جعبه Filre Name بروید و خواص سایر فایلها را مشخص کنید.
7- برگه Transaction را کلیک کنید.
8- پس از خاتمه Ok را کلیک کنید. اگر پایگاه های ایجاد شده را مشاهده نمی کنید، بر روی پوشه Database راست کنید و گزینه Refresh را انتخاب نمایید.
2-3-2-حذف پایگاه داده
برای حذف یک پایگاه داده از سیستم Transact_SQL یا Enterprise بکارمی رود. قبل از حذف به نکات زیر توجه کنید:
-حذف پایگاه داده اطلاعات آن را از جداول سیستم حذف کرده و کلیه دادهها و گزارش تراکنشها را از سیستم پاک می کند.
-یک پایگاه داده حذف شده را می توان فقط از طریق احیاء آن با نسخه پشتیبان مجدداً ایجاد کرد.
-در هنگام حذف پایگاه داده هیچ کاربری نباید در پایگاه داده باشد.
-در هنگام صدور دستور DROP DATABASE باید در پایگاه داده Master باشید.
حال به نگارش این دستور توجه کنید:
DROP DATABASE database_name1, database_name2
برای حذف پایگاه داده از طریق Enterprise Manager مراحل زیر را دنبال کنید:
1-Enterprise Manager را اجرا کنید و به پوشه Database بروید.
2-بر روی پایگاه داده Leap کلیک راست کنید و گزینه Delete را انتخاب نمایید.
3-درجعبه تایید عمل حذف Yes را کلیک کنید.
با اینکار پایگاه داده و فایلهای دادهای و تراکنش از سیستم حذف می شوند.
2-3-3- مجوزها در SQL Server انواع مجوزها
DQL Server 2000 سه واژه اعطا (GRANT) منع (DENY) و باز پس گیری (Revoke) را در ارتباط با مجوزها بکار می برد.
برای آنکه کاربر بتواند عمل خاصی را انجام دهد باید مجوزآن به وی اعطا شود. برای جلوگیری از اجرای یک عمل توسط کاربر، کاربر ازاجرای آن منع می شود و برای حذف مجوز اعطا شده قبلی، مجوز باز پس گرفته میشود.
شما میتوانید دو نوع مجوز اعطا کنید: مجوزهای سطح دستور و سطح شیء. مجوزهای سطح دستور به کاربر اجازه می دهند دستور T-SQL خاصی را اجرا کند، در حالیکه مجوز شیء، مجوز اجرای عملیات خاص نظیرUPDATE , INSERT , SELECT یا DELETE دادهها را به کاربر میدهد.
تقدیم مجوزها (Permissions Precedence)
درک چگونگی اعمال مجوزها برای آگاهی از انتخاب مجوزهای موثر ضروری است.کلیه مجوزها در SQL Server جمع شونده (Cumulative) هستند. مجوز DENY بر سایر مجوزها غالب است، استثناء محسوب میشود.
اگر مجوز SELECT را از عضویت خود در نقش 1 و مجوز INSERT را از عضویت خود در نقش 2 دارید درحقیقت هر دو مجوز INSERT و SELECT را در اختیار دارید. اما اگر دستور DENY بکار رود بر کلیه مجوزها غالب شده و آنها را از شما میگیرد..
مجوزهای خاص SQL Server
SQL Server 2000 دارای سطوح متعدد مجوزهاست و بسیاری از آنها مختص پایگاه داده میباشند همانطور که قبلاً ذکر شد نقشهای ثابت سرویس دهنده به Loginها بسته می شوند ونه به کاربران پایگاه داده و هر نقش بر مجموعه ای خاص از مجوزها دلالت میکند.
در هر پایگاه داده نقشهای ثابت سرویس دهنده ای وجود دارد که با مجموعه خاصی از مجوزها مرتبط است. هر پایگاه داده دارای کاربری به نام dbo (مالک پایگاه داده) است.اگر چه در SQL Server مستقیما اطلاعاتی در مورد آن نمی بینید اما مفهومی به نام مالک شیء پایگاه داده Database Object Owner وجود دارد و مجوزهای خاصی به افراد این نقش به ارث می رسد.
مجوز CREATE DATABASE
این مجوز به کاربران اجازه میدهد برای خود پایگاه داده ایجاد کنند و dbo آن شوند. مالکیت پایگاه داده را می توان بعداً تغییر داد.
از آنجاییکه مجوزها به کاربران اعطا میشود و نه Loginها بنابر این این مجوز را فقط در پایگاه Master اعطا کنید. این مجوز در هیچ پایگاه داده دیگری وجود ندارد. مجوز CREATE DATABASE حقوق استفاده از دستور ALTER DATABASE را نیز به شما میدهد به عبارت دیگر نمی توانید دستور ALTER را بکار برید مگر آنکه مجوز CREATE DATABASE را داشته باشید.
نکته : بکارگیری نقش سرویس دهنده dbcreator بهتر از اعطای مجوز دستور CREATE DATABASE است زیرا بهر حال به سایر مجوزهای اعطا شده dbcreator نیاز دارید. علاوه بر آن تشخیص حقوق اشخاص از طریق نقشهای SQL Server سادهتر است.
مجوزهای CREATE TABLE, VIEW, FUNCTION, PROCEDURE, DEFAULT, RULE
این مجوزها به کاربران امکان میدهد دستورات ایجاد اشیاء را در پایگاه دادهای که مجوز آن را در اختیار دارند اجزا نمایند. این مجوزها بطور مکرر به برنامه نویسان اعطا میشود زیرا ایشان در حین تولید و توسعه پایگاه داده نیاز به ایجاد منابع متفاوت دارند.
نکته: مجوزهای ALL CREATE شامل حقوق حذف و تغییر اشیاء ایجاد شده توسط یک کاربر است. اعطای این مجوز می تواند مشکلات جدی را بوجود آورد زیرا به کاربر امکان میدهد پس از خاتمه کار با یک شیء آن را حذف کند. یک کاربر ممکن است شیئی را تغییر دهد و آن را برای سایرین غیر قابل استفاده کند.
تخصیص مجوزهای دستورات
برای اعطا، رد یا باز پس گیری مجوزهای دستورارت میتوانید Enterprise Manager , T-SQL را بکار برید
دستور GRANT
این دستور مجوزهای دستورات را به کاربر اعطا میکند.
GRSNT {ALL | Statement_List} to {Account}
در این نگارش:
-ALL کلیه مجوزهای ممکن است
Statement_List لیست شمارشی مجوزهای دستوری است که می خواهید به یک حساب اعطا کنید.
-Account نام کاربر پایگاه داده، نقش پایگاه داده، کاربر ویندوز یا گروه ویندوز است.
دستور REVOKE
این دستور کلیه مجوزهای اعطا شده قبلی را باز پس میگیرد:
REVOKE {ALL | Statement_List} to {Account}
در این نگارش:
Statement_List لیست شمارشی مجوزهای دستوری است که می خواهید باز پس بگیرید
دستور DENY
فرض کنید کاربری (مثل Joe) عضو نقش پایگاه دادهای با مجوز CREATE DATABASE می باشد بنابر این Joe نیز این مجوز را داراست. اما اگر مایل نیستید این شخص حتی با این عضویت توانایی ایجاد جدول داشته باشد، میتوانید دستور DENY را بکار برید:
DENY{ALL | Statement_List} to {Account}
در این نگارش کلیه پارامتر مشابه دو دستور قبل میباشد.
راهبری مجوزهای دستورات از طریق Enterprise Manager
Enterprise Manager برای پیاده سازی مجوزهای دستورات یک واسط گرافیکی فراهم آورده است. برای مشاهده یا ویرایش مجوزها، پوشه Database را بسط دهید و بر روی پایگاه داده مورد نظر کلیک راست کنید. سپس Propertiseرا انتخاب کنید. برگه Permissions را کلیک کنید تا مجوزهای پایگاه داده را مشاهده کنید.
برای اعطا یا بازپس گیری مجوزها، جعبهها می توانند حاوی یکی از سه نشانه زیر باشند:
-علامت چک مارک به معنای اعطای مجوز است.
-علامت * قرمز رنگ به معنای رد مجوز است.
-جعبه خالی نشان دهنده عدم تخصیص صریح هر گونه مجوز است.
برای اعطای یک مجوز علامت چک مارک را در جعبه مناسب هر حساب قرار دهید. برای رد مجوز بر روی جعبه دوبار کلیک کنید تا علامت * قرمز رنگ پدیدار شود. اگر مجوزی قبلاً اعطا شده باشد، کلیک جعبه سبب نمودار شدن علامت * قرمز رنگ میشود. برای ارسال دستور REVOKE جعبه را با کلیک مجدد خالی کنید. برای دائمی شدن تغییرات OK را کلیک کنید.
هشدار:
توانایی ایجاد اشیاء در پایگاه داده نکته مهمی است بنابراین تنها در صورت نیاز این مجوز را به کاربران اعطا کنید.
مجوزهای اشیاء (Object Permissions)
این مجوزها به کاربر، نقش، گروه یا کاربر ویندوز اجازه می دهند تا عملیاتی را بر روی اشیاء خاص پایگاه داده انجام دهند. این مجوزها فقط برای اشیاء مشخص شده در هنگام اعطای مجوز اعمال میشود با اینکار می توان حقوق اجرای دستورات T-SQL بر روی اشیاء را به تک تک کاربران اعطا کرد. این مجوزها متداول ترین نوع مجوزهای اعطایی به کاربران میباشند.
مجوزهای Object در دسترس عبارتند از:
SELECT
مشاهده داده در جدول دید یا ستون
INSERYT
افزودن داده به جدول یا دید
UPDATE
تغییر دادههای موجود در جدول، دید یا ستون
DELETE
حذف داده از جدول یا دید
EXECUTE
اجرای روال ذخیره شده
Reference:
ارجاع به جدول که دارای کلید خارجی است یا ایجاد تابع یا دیدی با گزینه SCHEMABINDING که به یک شیء ارجاع میکند.
توجه:
مجوز REFERENCES در Enterprise Manager به شکل مخفف DRI بکار می رود و به کاربر (یا برنامههای کاربردی) اجازه میدهد مقداری را با مقادیر جدول دیگر مقایسه کند، بدون آنکه دادههای جدول دیگر را واقعا مشاهده نماید.
یک کاربرد جدید در Schema binding , SQL Server 2000 نامیده میشود.
و کار آن ممانعت از تغییر اشیایی است که در دیدها یا توابع بکار برده اید و به آن وابسته هستید.
تخصیص مجوزهای اشیاء:
برای اعطا، رد و باز پس گیری مجوزهای اشیاء میتوانید Enterprise Manager T_SQL را بکار برید.
اعطای مجوزهای اشیاء از طریق Enterprise Manager
مدیریت مجوزهای اشیاء بخشی از عملیات راهبری سیستم است و اعطا و بازپس گیری این مجوزها از کارهای رایجی است که در طول روز انجام خواهید داد.
Enterprise Manager یک روش سهل، سریع و بصری را برای کنترل مجوزهای اشیاء فراهم آورده است. در این روش مشاهده مجوزها بر اساس اشیاء یا کاربران امکان پذیر است. این توانایی پیگیری خطاها را نیز تسهیل میکند
مشاهد مجوزهای یک شیء
برای مشاهده یا تغییر مجوزهای اشیا در Enterprise Manager مراحل زیر را دنبال کنید.
1-پوشه database را برای پایگاه داده مورد نظر بسط دهید و آیکون نوع شیء را برجسته کنید.
2-بر روی شیء کلیک راست کنید و گزینه Properties را انتخاب نمایید.
3-دگمه Permissions را کلیک کنید.
شما میتوانید مشاهده کلیه کاربران، گروهها، کاربران و گروههای ویندوز یا گروهای در دسترس پایگاه داده را انتخاب کنید و یا لیست کلیه حسابهاییی که بر روی اشیاء قابل مشاهده دارای مجوزند را انتخاب کنید برگه Object Properties درست مشابه برگه Statement Permission عمل میکند.
برای اعطای مجوز، جعبه مجاور آن را علامتگذاری کنید، برای DENY یک علامت * قرمز در جعبه قراردهید و برای باز پس گیری مجوز جعبه مناسب را پاک کنید. پس از اعمال تغییرات دگمه Apply یا OK را کلیک کنید. برای تنظیم مجوزهای سطح ستون، دگمه Column را کلیک کنید.
SQL Server تنها مجوزهای مناسب با نوع شیء انتخاب شده را نمایش میدهد.
مشاهده مجوزها برای یک کاربر یا نقش پایگاه داده
شما میتوانید مجوزها را برای یک کاربر یا نقش مشاهده کنید. برای مشاهده یا تغییر مجوزها در Enterprise Manager بر مبنای نقش یا کاربر، مراحل زیر را دنبال کنید:
1-پوشه Database را برای پایگاه داده مورد نظر بسط دهید و آیکون Database یا Database Roles را بر جسته کنید.
2-بر روی کاربر یا نقش کلیک راست کرده و گزینه Properties را انتخاب کنید.
3-دگمه Permissions راکلیک کنید.
4- جعبه های مناسب را برای اعطا، یا باز پس گیری مجوزها کلیک کنید. پس از تنظیم مجوزها، Apply یا OK را برای دائمی کردن تغییرات کلیک کنید.
2-3-4-انواع داده و ایجاد جداول
جداول
جداول کلیه داده های پایگاه داده را به شکل مجموعه ای از سطرها و ستونها (رکوردها و فیلدها) سازماندهی و ذخیره می کنند. هر ستون در جدول قابلیت نگهداری یک نوع داده (نوع خاصی از اطلاعات ) را داراست.
هر جدول مجزا در پایگاه داده معرف یک موجودیت (entity) و هر سطر جدول نمودی (ocurance) از آنست. ستون های جدول، مشخصه های (attributes) موجودیت منطقی را بیان می کنند. برای مثال در جدول فرضی کارمندان (کارمندان موجودیت منطقی هستند) هر سطر نشاندهنده یک کارمند و ستون های تشکیل دهنده جدول، مشخصه های ایشان نظیر شماره کارمندی، نام و نام خانوادگی و شماره تأمین اجتماعی است.
ستونها
هر ستون (فلید) در جدول دادهای دارای یک نام، نوع داده، طول (اختیاری)، collation (اختیاری) و قابلیت ذخیره سازی مقدار تهی است. ستون ها را می توان با هر ترتیبی در تعریف جدول قرار داد اما لازم است تا نام یکتایی در جدول داشته باشند و از قوانین شناسه های (identifiers) SQL Server تبعیت کنند.
هر پایگاه داده می تواند دو میلیون جدول با 1024 ستون در هر جدول را دارباشد. حداکثر طول هر سطر 8192 بایت است که سربار (overhead) ذخیره سازی فیزیکی سطرها در SQL Server از آن کم میشود. این سربارمتغیر است اما بطور کلی حداکثر طول داده های هر سطر 8060 بایت می باشد.
حداکثر طول هر ستون 8000 بایت است و می توان در هر سطر 1024 ستون داشت. در هر حال یک سطر نمی تواند از یک صفحه دادهای (Data Page) برابر با 8192 بایت برای داده و سربار بیشتر شود مگر نوع دادهای متن (text) و تصویر (image) که می تواند تا دو گیگابایت اطلاعاتی متنی یا باینری را ذخیره کند صفحه دادهای برای آنها اعمال نمی شود.
شناسه های SQL Server
نام جداول ، ستون ها و سایر اشیاء در SQL Sever تابع قوانین زیر است:
- طول شناسه از 1 تا 128 کاراکتر Unicode شامل حروف، اعداد و علائم است.
- نخستین کاراکتر باید حرف یا یکی از علایم @ ‚ # یا ـ (Underscore) باشد. @‚# معانی خاصی در SQL Sever دارند.
- علائم #‚@ و ـ را می توان پس از کاراکتر نخست بکار برد.
- شناسه هایی که با علامت @ شروع می شوند بعنوان متغیرهای محلی بکار می روند. این علامت می تواند فقط در کاراکتر نخست بکار رود.
- شناسه هایی که با علامت # شروع می شوند اشیاء موقت (temporary) را نشان می دهند و در طول نشست (session) توسط کاربر قابل ارجاع میباشند.
- بکارگیری فاصله (space) در شناسه به شرط قرار گیری آنها در “” و[ ] در زمان ارجاع بلامانع است.برای مثال جدول Employee Pension را هنگام ارجاع به شکل “Employee Pension” یا [ Employee Pension ] بکار برید تا بارشته های ثابت در شناسه ها اشتباه نشوند.
تحقیق جامع و کامل درباره آموزش پایگاه داده در SQL SERVER