ايجاد کردن Check Constraint
شناخت Check Constraint
يکی از مهمترين بازرسی های طراحی پايگاه داده يکپارچه سازی داده ها می باشد. قاعده يکپارچگی داده ها تضمين مي کند که داده های ايجاد شده در پايگاه داده اگر درست نباشد حداقل قابل قبول می باشد. چندين سطح از يکپارچگی داده ها وجود دارد. در درس 7 ما درباره يکپارچگی رابطه ای مطالعه کرديم که تضمين می کند اجتماع بين جداول ايجاد و به طور صحيح نگهداری می گردند.
Check Constraintsبرای اجرای دو فرم اضافی از يکپارچگی پايگاه داده استفاده می شود. domain Integrity و entity Integrity . در اصطلاحات رابطه ای که Domain محدوده ای از مقاديری است که يک ستون می تواند داشته باشد. نوع داده های يک ستون يکی از ويژگيهای از يک Domain می باشد، اما تعريف نوع داده معمولاً کافی نيست. برای مثال، يک ستون Smallint می تواند شامل مقادير صحيح از 768/32- تا 767/32 می باشد که ممکن نوع داده مناسبی برای يک ستونی که شامل سالی است که يک کارمند مدرک دانشگاهي را در دريافت می کند باشد
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
2:1 PM  توسط Arash Afshar
|
ارتباط دادن جداول
Query هايی که در فصل 3 بررسی گرديد سطرهايش از يک جدول تکی ترسيم گرديده است اما Query ها به ويژه می توانند مفيد باشند برای ترکيب ستونهايی از چندين جدول يا نما که Joining Tables ناميده می شود و آن در شرطهای FROM يا WHERE از حالت SELECT انجام می گيرد. در اين فصل ما بر روی ايجاد ارتباطها با استفاده از شرط FROM که روشی توصيه شده است متمرکز خواهيم شد.
شناختن شرط FROM
همان طوری که ما ديده ايم، ساختار پايه ای از شرط FROM به آسانی نام از يک جدول يا نما ساده را فراهم می سازد. اما برای دسترسی پيدا کردن به توانايی از مدل ارتباطی، ما بايد به بازيابی ستونها از جداول چندگانه و نماها در يک Query خاص قادر باشيم. شرط FROM يک مکانيزمی برای انجام آن با استفاده از ساختار دستور زير:FROMON
اپراتور پيوند انواع پيوند برای به انجام رسيدن را تشريح می کند. Server SQL پيوندهای داخلی و خارجی همه نوسانات را پشتيبانی می کند، همان طوری که در بخش بعدی خواهيم ديد. شرايط پيوند يک تعبيری می باشد شبيه به ملاک که در شرط WHERE استفاده شده است. آن مشخص می کند که چگونه سطرها در دو جدول ارتباط خواهند يافت. بيشتر پردازشگرهای ربطی روی پايه ای از عبارتهای برابری مانند B ستون = A ستون به انجام می رسند.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
2:0 PM  توسط Arash Afshar
|
ايجاد کردن شئی های جدول
در درسهای گذشته، شما آموختيد که چگونه خصوصيات گوناگون از قبيل مقادير پيش فرض و Check Constraints برای ستونهای خاص از يک جدول تخصيص دهيم. بعضی مواقع اگر چه، يک نوع خاص از ستون در چندين جدول مختلف استفاده می گردد. در اين وضعيت، آن اغلب مفيد می باشد به ايجاد Properties در يک جای جداگانه به طوری که آنها را برای هر جدول به کار ببريم.
پيش فرضها، نقشها و انواع داده تعريف شده کاربر مکانيزمی را برای ايجاد و نگهداری اين شئی ها در يک مکان جداگانه فراهم می آورند. برای مثال شما يک مدل پايگاه داده برای جوابگويی به ارزيابی مشتری می سازيد. شما در ابتدا تصميم می گيريد که مقدار پيش فرض برای هر سؤالی که جواب داده نشده بايد Unknown"" شوند. اگر شما يک پيش فرض ايجاد کنيد و پيش فرضها را برای ستون مناسب پيوند دهيد. شما می توانيد بعداً پيش فرض را به Unanswered تغيير دهيد. بدون هيچ تغييری هر ستون، آن پيش فرض را استفاده می کند.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:52 PM  توسط Arash Afshar
|
جداول موقت
جداول موقت مثل جداول عادی هستند با اين تفاوت که آنها فقط زمانی وجود دارند که از آنها استفاده می شود. آنها به طور اتوماتيک وقتی که تمام کاربران ديگر با آنها کاری ندارند توسط Microsoft SQL حذف می شود. نکته: ايجاد يک جدول موقت يک رويه تقريباً پر هزينه می باشد که مربوط به هزينه منابع Server و چرخه های CPU می باشد. بسياری از استفاده های مرسوم از جداول موقت هم اکنون می توانند با استفاده از جدول متغيرها جايگزين شوند.
استفاده از جدول موقت
جداول موقت با استفاده از همان فرمان Create و Select INTO به عنوان جداول عادی ايجاد می شوند. بعد از تهيه جدول در سؤال قابل دسترسی به ارتباط خواهد بود. (اين است که اين يک جدول محلی تهيه شده توسط ارتباط متفاوت نيست)، اين عمل همچنين مثل جداول عادی قابل استفاده می باشد.
ايجاد جدول موقت محلی
1- دکمه علامت سؤال جديد را روی Toolbar تجزيه کننده سؤال کليک کنيد تا يک پنجره سؤال جديد ظاهر شود.
2- روی دکمه Loud Script روی Toolbar تجزيه کننده سؤال کليک کنيد. تجزيه کننده سؤال جعبه پرونده گفتگو را نشان خواهد داد.
3- نسخه خطی Create Local را انتخاب کنيد و Open را کليک کنيد. تجزيه کننده سؤال نسخه خطی را پر می کند.
4- دکمه Execute Query را در Toolbar تجزيه کننده سؤال کليک کنيد. تجزيه کننده سؤال جدول موقت ايجاد می کند.
5- User Table Folder را که در پايگاه داده Tempdb در Object browser می باشد را انتخاب کنيد.
6- F5 را برای به کارگيری مجدد نمايشگر Object browser فشار دهيد و User Table Folder را گسترش دهيد. نمايشگر سؤال جدول محلی dbo.# را در ليست نشان خواهد داد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:51 PM  توسط Arash Afshar
|
از: div.ir
ايجاد كردن جداول و تغییر دادنشان
در محيط SQL Server ميكروسافت، در هر پايگاه داده مرتبط، اطلاعاتي در داخل جداول سازماندهي مي شوند بر طبق ترتيب سطرها و ستونها كه داده ها را براي شئی های تکی ذخيره می کند. در اين درس، شما مي آموزيد كه چگونه يك جدول جديد را ايجاد كنيد و معين كنيد ستونهايي كه آن جدول در بردارد.
راهنمايي: در نظر گرفتن محتويات جدول به عنوان يك شبكه (Grid) مانند يك صفحه گسترده ايده آل مي باشد. اما اين موضوع مهم مي باشد به تشخيص اينكه ركوردها در يك جدول نظم دروني ندارند. ايده هاي Previous و Next در يك ركورد جدول به كار برده نمي شوند. اگر شما نياز به انجام عملياتهاي متوالي نداشته باشيد، شما مي توانيد به وسيله ای به نام Cursor آن را انجام دهيد. يك ماهيتي كه به يك سطر ويژه در يك مجموعه از ركوردها اشاره مي كند. در مورد Cursor در درس 27 بحث خواهيم كرد.
ايجاد كردن جداول
جداول يك واحد تابعي از انبار داده ها در يك پايگاه داده های مرتبط مي باشند. به عنوان يك قاعده كلي، هر نوع از موجوديتها از قبيل Essential Oil در پايگاه داده نمونه مان به وسيله يك جدول نشان داده مي شود، نظر به اينكه هر نمونه از آن موجوديتها از قبيلGerman Chamomile Clary Sage به وسيله يك سطر در جدول نشان داده مي شود.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:48 PM  توسط Arash Afshar
|
شناخت عبارت INSERT
ساختار دستور عبارت Insert شبيه به عبارت Select می باشد، بيشترين شکل مبنای آن عبارت است از:
INSERT [INTO] Table-or-View [(Column-List)]
VALUES (Value-List)
هر عبارت Insert می تواند يک جدول يا نما منفرد را به هنگام سازد. زمانی که شما از عبارت Insert برای به هنگام سازی يک نما استفاده می کنيد شما بايد آگاه باشيد از محدوديتهای زير:
View نبايد شامل يک تابع به هم پيوسته مانند COUNT يا AVG باشد.
View نبايد شامل Top ، GROUP BY ، UNION يا DISTINCT باشد.
View نبايد شامل يک ستون محاسبه شده باشد.
View بايد يک جدول را در شرط From باز گرداند.
عبارت Insert ستونهاي يک جدول منفرد را فقط به هنگام می سازد.
ليست ستون در عبارت Insert اختياری می باشد. اگر آن فراهم نگردد عبارت Insert بايد شامل مقاديری برای همه ستونها در جدول يا نما باشد و آنها بايد به همان ترتيب به عنوان ستونهايی در جدول يا نما فراهم شوند. اگر چه شما می توانيد از کليدهای ويژه DEFAULT برای مشخص کردن مقادير پيش فرض برای يک سطر استفاده کنيد. زمانی که ليست ستون گنجانده می شود. آن يک فرمت شبيه از ليست ستون در عبارت Select می گيرد: يک ليستی از نامهای ستون که با کاما جدا شده است. از زمانی که يک عبارت Insert می تواند يک سطر را فقط برای يک جدول اضافه کند، شما معمولاً نياز به استفاده کردن مشخصه نام جدول برای نام ستون نخواهيد داشت.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:47 PM  توسط Arash Afshar
|
عبارت SELECT
پايه و اساس همه داده های رابطه ای در محيط SQL Server يک حالت Transact-SQL تنها است که عبارت Select می باشد. در اين درس ما به مهمترين ترکيبات حالت Select و راههای استفاده کردن از Query Designer برای ساختن خودکار عبارت می پردازيم. با استفاده از Query Designer شما می توانيد يک عبارت Select را مستقيماً در قاب SQL وارد سازيد يا با داشتن Query Designer آن را به وسيله قابهای Grid و Diagram بسازيد. گزينه ها متقابلاً منحصر به فرد نمی باشند. شما می توانيد يک Query را به وسيله اضافه کردن جداول برای قاب Diagram ، تغيير نام ستون با استفاده از قاب Grid شروع کنيد و دستورات را به طوری که سطرها برگردانده می شود به وسيله وارد کردن شرط ORDER BY به صورت مستقيم در قاب SQL مشخص کنيد.
تمرينهای درس يک گونه ای از تکنيکها را به شما نشان خواهد داد. موقعی که خودتان کار می کنيد شما می توانيد يکی را که در زمان ساده تر به نظر می رسد را انتخاب کنيد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:45 PM  توسط Arash Afshar
|
بازيابی سطرها
بيشتر برنامه های پايگاه داده از يک برنامه ريزی محيطی از قبيل مايکروسافت Access يا مايکروسافت Visual Basic برای فراهم آوردن رابط کاربر استفاده خواهند کرد. اگر چه Manager Enterprise يک ابزار ساده به نام Query Designer فراهم می آورد که به شما به آسانی اجازه می دهد داده ها را در يک يا چندين جدول در پايگاه داده Aromatherapy استفاده می کنيد.
استفاده کردن از Query Designer
حتی با وجود اينکه داده در يک پايگاه داده SQL Server ذخيره شده به سختی در حالت Raw استفاده شده بدون اينکه ذخيره شود يا فيلتر شود در چندين طريق، بعضی مواقع آن به توانا بودن برای کنترل سريع محتويات يک جدول مفيد واقع می شود. Query Designer مديريت Enterprise آن را برای ديدن و ويرايش سطرها آسان ساخته و حتی سطرهای جديد ديگر اضافه می کند.
ديدن سطرها در يک جدول
ساده ترين راه برای ديدن سطرها در يک جدول بازکردن Query Designer از طريق منوی Context جدول می باشد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:44 PM  توسط Arash Afshar
|
مرتب سازی و انتخاب کردن سطرها
در فصل گذشته ما بيشترين فرمهای مقدماتی از حالت SELECT را مرور کرده و آنها را برای انتخاب ستونهای يک جدول استفاده کرديم. اما بيشتر مواقع شما بازگشت به سطرها در جدول پس زمينه يا نمايش در يک قاعده خاص و فقط بازگشت به يک زير مجموعه از آنها را خواهيد خواست. شرطهای ORDER BY و WHERE در اين درس بررسی شده و اجرای آن برای شما فراهم شود.
شرط ORDER BY
شرط The ORDER BY يک ترکيب گزينه ای از يک حالت SELECT می باشد. آن به شما برای مشخص کردن ترتيب در آن سطرهايی که بازگشت خواهند کرد اجازه می دهد. ستونهای چندگانه می توانند مشخص شوند و سطرها می توانند به صورت ترتيب افزايشی يا کاهشی باز گردانده شوند.
مرتب سازی سطرها
ساده ترين فرم در شرط ORDER BY فراهم می سازد يک نام ستون تکی که برای مرتب کردن سطرها که به وسيله Query باز گردانده می شود استفاده خواهد شد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:43 PM  توسط Arash Afshar
|
خلاصه سازی داده ها
هنگامی که دو جدول در يک پيوند يک به چند سهيم هستند. وسيله محرک Query مقاديری از سطر را از يک طرف برای ارتباط دادن سطرها در طرفهای ديگری تکرار می کند. بعضی مواقع آن دقيقاً چيزی است که شما می خواهيد، اما اغلب شما می خواهيد تکرار کردن سطرها را از چندين طريق دسته بندی يا خلاصه سازيد. در اين درس، ما به دو روش برای انجام آن که عبارتند از کليد واژه DISTINCT و شرط GROUP BY نگاه خواهيم کرد.
شناختن SELECT DISTINCT
يکی از اهداف طرح پايگاه داده ارتباطی برداشتن وابستگی داده ها می باشد. اما بيشتر پايگاه داده به طور ضروری مقادير واقعی در چندين سطر را شامل خواهد شد. يک جدولی که شامل اطلاعات آدرس مشتری می باشد برای مثال احتمالاً کد ايالتی و کشوری برای چندين سطر خواهد داشت که نه اشتباه و نه تکراری می باشد. نظر به اينکه هر کد ايالتی نسبتی از يک مشتری می باشد. به همين نحو يک جدول از چندين جهت از يک ارتباط يک به چند ممکن است هر مقدار کليد خارجی معلوم که چندين بار تکرار شده را داشته باشد. آن برای يک ارتباط يکپارچه از پايگاه داده لازم می باشد. اگر چه اين تکرار می تواند بعضی مواقع نتايج Query را نامطلوب سازد. يک جدول مشتری با 1000 سطر با 90 درصد مشتری از کاليفرنيا، Query زير کد CA را 9000 بار خواهد باز گرداند که اصلاً يک نتيجه مفيدی نمی باشد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:41 PM  توسط Arash Afshar
|
معرفی SQL و دستورات عمومی آن
توسط SQL ميتوان درون يك بانك اطلاعاتي پرس و جو كرده (Query) و نتيجه را برگرداند. بانك اطلاعاتي شامل آبجكتي به نام جدول (Table) ميباشد.
ركوردها در بانكهاي اطلاعات در جداول ذخيره ميگردند.
جدول شامل سطر و ستون ميباشند.
در زير ميتوان يك جدول را مشاهده كرد :
Last Name First Name Address City
مثال:
Select Last name from persons
پر كاربرد ترين دستورات SQL شامل موارد زير است :
SELECT استخراج يك داده از بانك اطلاعاتي
UPDATE به روز رساني يك داده درون بانك
DELETE پاك كردن يك داده از بانك اطلاعاتي
INSERT وارد كردن يك داده جديد به بانك اطلاعاتي
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:40 PM  توسط Arash Afshar
|
در ادامه مطالب آموزش SQL حال به بحث ديدها (view) مي پردازيم. ديد در اصل يك جدول مجازي است كه محتوي آن توسط يك پرس و جو تعريف مي گردد. همانند جدول ديد هم داراي سطر و ستونهايي مي باشد. مي توان به موارد زير به عنوان مزاياي ديد اشاره كرد :
ديدها به كاربران اجازه ميدهند تا بر روي داده هايي كه نياز دارند متمركز شوند. بنابر اين داده هاي غير ضروري ميتوان از ديد خارج كرد. ديدها امنيت داده ها را نيز افزايش ميدهند چراكه كاربر فقط داده هايي را مي بيند كه در ديد وجود دارند.
ديدها به كاربران اجازه ميدهند تا داده ها را به روشهاي متفاوت مشاهد نمايند. ديدها ميتوانند براي مبادله داده ها با ساير برنامه هاي كاربردي بكار روند.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:39 PM  توسط Arash Afshar
|
منبع : از گروه كامپيوتر 4 آل
در اين قسمت در ادامه مطالب قبلي مبحث SP خواهيم پرداخت و آن را كامل خواهيم كرد. در قسمت بعدي مطلب با View ها آشنا خواهيم شد.
ايجاد Stored Procedure با استفاده از ويزارد ها:
براي ايجاد SP هاي استاندارد جهت عمليات درج , حذف و ويرايش شما مي توانيد از ويزاردهاي خود SQL استفاده نماييد. با اين ابزار شما قادريد طي چند دقيقه تعداد زيادي SP جهت عملياتهاي گفته شده بر روي جداول خود بسازيد. براي اين منظور در Enterprise Manager بر روي كليد ويزارد كليك نماييد مانند شكل زير :
بعد در پنجره Select Wizard بر رويDatabase كليك و گزينه Create Stored Procedure Wizard را انتخاب نماييد . مانند شكل زير :
در پنجره بعدي به شما خوش آمد گويي مينماييد . برروي كليد Next كليك نماييد.در پنجره بعدي نام Database ي را كه قرار است بر روي جداول آن كار شود انتخاب نماييد و بروي Next كليك نماييد. در پنجره بعدي جداول و عمليات مورد نظري كه مي خواهيد انجام دهيد انتخاب كنيد. در پنجره بعدي نام SP هايي كه سيستم ساخته شما خواهيد ديد.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:38 PM  توسط Arash Afshar
|
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:32 PM  توسط Arash Afshar
|
مفاهيم ابتدائي
مقدمه :
كاربرد روز افزون بانك اطلاعاتي SQL مرا بر آن داشت تا مطالبي هر چند كوتاه جهت خوانندگان محترم سايت تهيه نماييم. قبلا از هر چيز لازم به ذكر است كه مطالب ذيل در حد آشنايي بوده و دوستا براي دستيابي به تكنيكهاي بيشتر مي بايست از كتابهاي مرجع و Book online خود SQL Server استفاده نمايند. در مطالب زير كه سلسله وار مباحث SQL Server را مرور خواهيم كرد , سعي شده تا ابتدا مطالب مقدماتي جهت آشنايي آورده شود و سپس اگر عمري باقي بود به مطالب پيشرفته آن بپردازيم. همچنين براي يادآوري خدمت دوستان ابتدا مرور سريعي بر چند دستور SQL كه كاربرد بيشتري دارند خواهيم پرداخت و سپس به SQL Server و مطالب آن خواهيم پرداخت . مطالب زير اكثرا از كتاب Microsoft SQL Server 7.0 Database Implementation Training انتخاب گرديده است . اين كتاب به همراه CDآموزش آن به عنوان يك مرجع براي امتحانات مايكروسافت استفاده ميشود.
جداول بكار رفته نيز همگي در SQL Server 7.0 در Database Northwind موجود هستند.
ادامه مطلب
+ نوشته شده در
Sat 18 Aug 2007ساعت
1:31 PM  توسط Arash Afshar
|