Ahm(|Ahmad|) DataBase

مکانی برای دریافت اخبار ، مقالات و تجربیات من در حوزه مرتبط با پایگاه داده

Ahm(|Ahmad|) DataBase

مکانی برای دریافت اخبار ، مقالات و تجربیات من در حوزه مرتبط با پایگاه داده

Ahm(|Ahmad|) DataBase

این وبلاگ مکانی است برای تبادل اطلاعات بین من و شما در حوزه مرتبط با پایگاه داده امیدوارم مورد رضایت دوستان واقع شود هرچند که با توجه به گسترش دانش بشری پرداختن به تمامی نیازها یک نگاه کاملا ایده آل است اما تمام سعی من در این است بتوانم کمکی هر چند کوچک به دوستان کرده باشم.

آخرین نظرات

پاسخ مسابقه شماره 1

سه شنبه, ۲ مهر ۱۳۹۲، ۰۹:۳۶ ق.ظ
با استقبال دوستان اما فقط خانم زکی زاده پاسخ به سوالات دادند...

اما جواب سوالات این هفته :

* پاسخ های  خانم زکی زاده:

سوال یک:
delete : برای حذف یک سطر از جدول است . درصورتی که از دستور where استفاده نشود تمام سطرها را حذف می کند.
برای برگشت تغییرمون و یا موقتی کردن تغییر می شود در این دستور از commit , roleback استفاده کنیم.
در هربار حذف یک log در فایل ldf  ثبت می شود و در مواردی که تعداد زیادی سطر حذف شود باعث کند شدن می شود.
Turncate: برای حذف سریع تمام سطرهای یک جدول کاربرد دارد.
در این دستور هیچ بازگشتی وجود ندارد و از trigger و rollback نمی شود استفاده کرد.
تنها یک log  در فایل ldf ثبت می شود.
فضای کمتری را اشغال می کند.

جواب پاسخ سوال 1 بخش متوسط خانم زکی زاده : 
تمامی نکات را گفتدید ...کاملا درست است..نکته : هنگام استفاده از Truncate Table باید حتما تمامی روابط موجود بین جداول را حذف کنید. 

سوال دو: راستش خوب نفهمیدم ولی فکر می کنم با توجه به جداول موجود  با View , select می توان در هر بانک اطلاعات افراد را برداشت کرد و با join یک گزارشی به مدیر داد.(خوب نفمیدم چی می خواستید در مفهوم سوال بگنجانید ولی خوب!)

جواب پاسخ سوال 2 بخش متوسط خانم زکی زاده :

اشتباه است حال جهت پاسخ خود به ادامه مطلب بروید.






حال پاسخ سوالات سه بخش مبتدی ، متوسط و حرفه ای :


پاسخ سوالات بخش مبتدی : 

1) اسکیریپ ساخت یک دیتابیس در  D:\DataBase  به نام Test را بنویسید.
قسمت های Bold شده پاسخ مختصر سوال است بقیه توضیحات به صورت پیش فرض است بستگی به نیاز شما است

[CREATE DATABASE [test
 CONTAINMENT = NONE
 ON  PRIMARY 
( NAME = N'test', FILENAME = N'D:\ DataBase\test.mdf' )

2) فرق Primary Key با Unique key چیست ؟

لینک پاسخ سوال

3) فرق فیلد Null با فیلد صفر چیست ؟ (توضیح مختصر)

به صورت خیلی ساده Null هیچ فضایی را در بر نمی گیرد اما فیلد صفر یک فضای یک کارکتری را در بر می گیرد.
(کتاب آموزش SQL Server 2008 نویسنده :  روبین دوسون مترجم : مهندس حبیب فروزنده دهکردی صفحه : 200  )



پاسخ بخش متوسط :

1) فرق Truncate Table با Delete چیست ؟ (3مورد )

جواب خانم زکی زاده کاملا درست است ...من به صورت موردی بیان می کنم : 

خیلی سریع است.

غیر قابل بازگشت است.

Non-Logged است.

هر جدولی را نمی توان Truncate Table کرد جدول نباید FK داشته باشد.


2) به عنوان مثال بنده مسول رسیدگی در یک بخش بانک مرکزی هستم که مدیر بنده یک سری اطلاعات از بنده می خواهد.

مدیر بنده می گوید  ، مشخصات افرادی را که بالای 10 میلیارد تومان پول در بانک های سراسر کشور را دارند را نشان بده .

(چند نکته : ما در کل کشور بانک زیاد داریم حال بحث اصلی من کل بانک ها نیست مثلا شما 3 تا بانک در نظر بگیرید من یک لیست پیوسته از مشخصات افراد و میزان پول آنها در بانک ها را می خواهم)

 {Databases = {Bank_Meli,Bank_Melat_Bank_Saderat 

{Table :PeInfor_Meli = {IDPersonal ,First_Name ,Last_Name,ListPrice 

 {Tables :PeInfor_Melat = {IDPersonal ,First_Name ,Last_Name,ListPrice 

 {Tables :PeInfor_Saderat = {IDPersonal ,First_Name ,Last_Name,ListPrice 



{Av Database : Master}
   Select IDPersonal,First_Name,Last_Name,ListPrice From Bank_Meli.PeInfor_Meli Where  ListPrice >10000000000
Union
 Select IDPersonal,First_Name,Last_Name,ListPrice From Bank_Melat.PeInfor_Melat Where  ListPrice >10000000000
Union
 Select IDPersonal,First_Name,Last_Name,ListPrice From Bank_Saderat.PeInfor_Saderat Where  ListPrice >10000000000

اگر display estimated execution plan بروید متوجه سرعت این کوئری با Join نوشتن می شوید.در کل پاسخ درست این است.




بخش حرفه ای :

1) فرق  (DBCC Log (Test ,1 با (DBCC Log (Test,4 چیست ؟(شرح کامل)

لینک پاسخ سوال 

به امید پاسخ های بیشتر دوستان...و مسابقات بعدی

  • احمد تاج بخش

مسابقه

نظرات  (۳)

  • سارا زکی زاده
  • سلام .با استقبال ویژه از مسابقه شما.
     سوال یک:
    delete : برای حذف یک سطر از جدل است . درصورتی که از دستور where استفاده نشود تمام سطرها را حذف می کند.
    برای برگشت تغییرمون و یا موقتی کردن تغییر می شود در این دستور از commit , roleback استفاده کنیم.
    در هربار حذف یک log در فایل ldf  ثبت می شود و در مواردی که تعداد زیادی سطر حذف شود باعث کند شدن می شود.
    Turncate: برای حذف سریع تمام سطرهای یک جدول کاربرد دارد.
    در این دستور هیچ بازگشتی وجود ندارد و از trigger و rollback نمی شود استفاده کرد.
    تنها یک log  در فایل ldf ثبت می شود.
    فضای کمتری را اشغال می کند.
    سوال دو: راستش خوب نفهمیدم ولی فکر می کنم با توجه به جداول موجود  با View , select می توان در هر بانک اطلاعات افراد را برداشت کرد و با join یک گزارشی به مدیر داد.(خوب نفمیدم چی می خواستید در مفهوم سوال بگنجانید ولی خوب!)
    چه عالی
    خسته نباشید واقعا خیلی خوشم اومد از ابتکارتون .
    ببخشید مسابقه تون جایزه هم داره؟ :-)
    پاسخ:
    سلام...
    فعلا بودجم به جایزه نمی رسد...:D... اما اگر پاسخ صحیح دادید می توانید مقاله ای با اسم خودتان توی وبلاگم درج کنید...:)
  • یه دانشجو دیگه
  • چه افتخار بزرگی!!!!!
    نصیب هر کسی نمی شه....
    باید خدا رو شاکر باشیم... نه!!!!!
    پاسخ:
    سلام خدمت یه دانشجو دیگه
    بله این افتخار بزرگی است ...:دی
    حال شما پاسخ خود را بیان کنید ما برای شما کمک هزینه امتحان ماکروسافت را در نظر می گیریم...بهتر از این ...:آبان

    ارسال نظر

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی