PDA

View Full Version : سوال: ریلیشن شیپ (ارتباط بین جداول ) بودن یا نبودن ! مسئله این است ...؟!



narpco
دوشنبه 26 آبان 1399, 22:24 عصر
دوستان بازم سلام ....اینبار تصمیم گرفتم سئوال رو بصورت یک ویدئوی کوتاه بپرسم که دیگه توضیح اضافه نیاز نباشه :لبخند:
سئوال در فیلم کامل توضیح داده شده و پرسیده شده است ...
ممنون میشم دوست داشتین فیلم رو ببینید و نظراتتون رو هر چه که هست بفرمایید که بسیار نیازمندیم با سپاس از شما
تجارب عملی شما بسیار مورد نیاز ماست .به امید مشارکت همه دوستان ...:تشویق::تشویق::تشویق:
https://s16.picofile.com/d/8414242242/ab7c9cfa-9927-4b6b-a37a-898b6e1c1129/RILATION_Q.mp4

narpco
چهارشنبه 28 آبان 1399, 13:49 عصر
دوستان کسی تمایل به پاسخگویی نداره ؟!!!

padide55
چهارشنبه 28 آبان 1399, 14:07 عصر
سلام.
با توجه به اموزشی بودن موضوع .
ابتدا شرحی بر ریلیشن شیپ داشته باشیم .
مقدمه بر ایجاد ریلیشن شیپ
۱.دو جدول باید در یک دیتابیس باشند
۲.نوع فیلد هردو جدول باید یکی باشد (عدد یا متن یا....)
۳.اندازه فیلدها باید یکی باشد.

padide55
چهارشنبه 28 آبان 1399, 14:15 عصر
برای مثال یک کتابخانه را در نظر بگیرید. برای موجودیت کتاب ، یک جدول برای نگهداری مشخصات کتاب مورد نیاز است.
همچنین برای نگهداری مشخصات اعضا کتابخانه ، جدول دیگری نیاز داریم. تا اینجا این دو جدول با هم ارتباطی ندارند.
ولی اگر بخواهید کتاب های به امانت رفته و اعضایی که آنها را به امانت برده اند را شناسایی کنید ، نیاز به داشتن جدول سومی است که در ان مشخص می شود که کدام عضو ، کدام کتاب را به امانت برده است.

ارتباط بین دو جدول از طریق فیلد مشترک آنها ایجاد می شود.



نکته: یکی از دو جدول مرتبط که مقادیر فیلد مشترکش غیر تکراری است ، جدول اصلی (والد) و دیگری جدول فرعی (فرزند) نامیده می شود.

padide55
چهارشنبه 28 آبان 1399, 14:16 عصر
نکته: الزامی برای یکسان بودن نام فیلد مشترک برقرار کننده ارتباط در دو جدول ، وجود ندارد.

padide55
چهارشنبه 28 آبان 1399, 14:18 عصر
قابلیتی را به نام حذف و بروزرسانی آبشاری دارد که در زیر بررسی می کنیم.



Casscade Update / Delete Related Fields :

هنگامی که جامعیت ارجاعی فعال باشد ، می توانید از بروزرسانی و حذف آبشاری نیز استفاده کنید . در بروز رسانی آبشاری ، وقتی که کلید اولیه در جدول اصلی تغییر می کند ، در جدول مرتبط (جدول فرعی) نیز مقدار فیلد خارجی تغییر می کند. همچنین در حذف آبشاری نیز هنگامی که کلید اولیه در جدول اصلی حذف می شود ، در جدول مرتبط (جدول فرعی) نیز مقدار فیلد خارجی حذف می شود.

این سه تیک با عنوان قوانین جامعیت ارجاعی در اکسس (Access) شناخته می شود.

152454

این سه تیک به صورت زیر می باشند:

Enforce Referential Integrity :

مانع ورود مقادیری که در جدول اصلی وجود ندارند به فیلد کلید خارجی (در جدول فرعی) می شود. اگر کاربر کد کتابی را در جدول کتاب های امانت داده شده وارد کند که در جدول مشخصات کتاب موجود نیست ، Access به او اخطار می دهد و مانع اشتباده او می شود.



اکسس اجازه حذف رکوردی از جدول اصلی که در جدول فرعی از آن استفاده شده است را به کاربر نمی دهد. مثلا نمی توانید عضوی را از جدول مشخصات اعضا حذف کنید ، در حالیکه کد آن عضو در جدول کتاب های امانت داده شده موجود باشد.





اکسس اجازه ویرایش مقدار فیلد مشترک در جدول اصلی (کلید اصلی) را که در جدول فرعی از آن استفاده شده است ، به کاربر نمی دهد. مثلا نمی توانید کد عضوی را از جدول مشخصات اعضا تغییر دهید . در حالیکه کد آن عضو در جدول کتاب های امانت داده شده موجود باشد.



اگر کاربر بخواهد اقدام به حذف یا ویرایش تعدادی رکورد در جداول اصلی کند ، Access مانع می شود مگر این که ابتدا در جداول فرعی رکوردهای مرتبط را حذف کرد

padide55
چهارشنبه 28 آبان 1399, 14:26 عصر
توجه داشته باشیم که ثبت داده ها بدون ریلیشن شیپ توسط فرمها و استفاده از لیست باکس و تکست باکس و استفاده از کدهایی نظیر
dlookup
قابل انجام است .
ولی برای گزارش گیریها و کوئری ها نیاز به ریلیشن هست.
بطور مثال
وقتی میخواهیم بدانیم که یک فرد از چه نویسنده هایی کتاب به امانت برده.
اینجاست که با کوئری و از جدول اسامی اسم فرد مورد نظر رو کوئری ایجاد میکنیم و نمایش می دهیم و
از جدول کتابها .فیلد اسم نویسنده کتاب رو نمایش میدهیم بایک کوئری .
اینجا از کلیه اطلاعات هر دوجدول اعضا و کتابها با هم استفاده می کنیم .

padide55
چهارشنبه 28 آبان 1399, 14:33 عصر
نوع ارتباط بین جداول هم به صورت تصویر زیر است
152455

narpco
چهارشنبه 28 آبان 1399, 15:48 عصر
وجه داشته باشیم که ثبت داده ها بدون ریلیشن شیپ توسط فرمها و استفاده از لیست باکس و تکست باکس و استفاده از کدهایی نظیر
dlookup
قابل انجام است .
ولی برای گزارش گیریها و کوئری ها نیاز به ریلیشن هست.
بطور مثال
وقتی میخواهیم بدانیم که یک فرد از چه نویسنده هایی کتاب به امانت برده.
اینجاست که با کوئری و از جدول اسامی اسم فرد مورد نظر رو کوئری ایجاد میکنیم و نمایش می دهیم و
از جدول کتابها .فیلد اسم نویسنده کتاب رو نمایش میدهیم بایک کوئری .
اینجا از کلیه اطلاعات هر دوجدول اعضا و کتابها با هم استفاده می کنیم

دنبال این جواب بودم --------------بسیار سپاس:تشویق::تشویق::تشویق:

eb_1345
چهارشنبه 28 آبان 1399, 17:16 عصر
وجه داشته باشیم که ثبت داده ها بدون ریلیشن شیپ توسط فرمها و استفاده از لیست باکس و تکست باکس و استفاده از کدهایی نظیر
dlookup
قابل انجام است .
ولی برای گزارش گیریها و کوئری ها نیاز به ریلیشن هست.
بطور مثال
وقتی میخواهیم بدانیم که یک فرد از چه نویسنده هایی کتاب به امانت برده.
اینجاست که با کوئری و از جدول اسامی اسم فرد مورد نظر رو کوئری ایجاد میکنیم و نمایش می دهیم و
از جدول کتابها .فیلد اسم نویسنده کتاب رو نمایش میدهیم بایک کوئری .
اینجا از کلیه اطلاعات هر دوجدول اعضا و کتابها با هم استفاده می کنیم

دنبال این جواب بودم --------------بسیار سپاس
:تشویق::تشویق::تشویق:


:متفکر::متفکر::متفکر::متفکر:: تفکر::متفکر::متفکر::متفکر::م فکر::متفکر::متفکر::متفکر::مت کر:

narpco
چهارشنبه 28 آبان 1399, 18:09 عصر
:متفکر::متفکر::متفکر::متفکر:: تفکر::متفکر::متفکر::متفکر::م فکر::متفکر::متفکر::متفکر::مت کر:


سلام متوجه منظور نشدم بزرگوار.......!! از کم سوادی ما تعجب کردین یا از پاسخ ؟

eb_1345
چهارشنبه 28 آبان 1399, 20:07 عصر
سلام متوجه منظور نشدم بزرگوار.......!! از کم سوادی ما تعجب کردین یا از پاسخ ؟
سلام
حدود بیست دقیقه ای طول کشید در خصوص سوال شما توضیحاتی در حدود پانزده /بیست خط تایپ کردم که متاسفانه اشتباهی بجای حذف یک تب اضافی در مرورگر ، تب سایت برنامه نویس را حذف کردم
الآن هم دیگر حوصله تایپ مجدد ندارم ، ولی در کل ابهام بنده بخاطر این بود که جناب padide55 (https://barnamenevis.org/member.php?263869-padide55) زحمت کشیدند و مطالبی در خصوص نحوه ارتباط جداول را در اینجا درج نمودند و ظاهراً شما هم با توضیحات فوق اقناع شدید ولی وقتی بنده خودم را در جایگاه یک فرد تازه وارد در زمینه اکسس تصور کردم در توضیحات فوق جواب ابهامات و سوالاتی که شما در ویدئو ارسالی با آنها اشاره کردید نیافتم .
شاید هم واقعاً سطح سواد بنده پائین است که درک درستی از توضیحات داده شده نداشته ام.
موفق باشید

atf1379
چهارشنبه 28 آبان 1399, 23:42 عصر
سلام
حدود بیست دقیقه ای طول کشید در خصوص سوال شما توضیحاتی در حدود پانزده /بیست خط تایپ کردم که متاسفانه اشتباهی بجای حذف یک تب اضافی در مرورگر ، تب سایت برنامه نویس را حذف کردم
الآن هم دیگر حوصله تایپ مجدد ندارم ، ولی در کل ابهام بنده بخاطر این بود که جناب padide55 (https://barnamenevis.org/member.php?263869-padide55) زحمت کشیدند و مطالبی در خصوص نحوه ارتباط جداول را در اینجا درج نمودند و ظاهراً شما هم با توضیحات فوق اقناع شدید ولی وقتی بنده خودم را در جایگاه یک فرد تازه وارد در زمینه اکسس تصور کردم در توضیحات فوق جواب ابهامات و سوالاتی که شما در ویدئو ارسالی با آنها اشاره کردید نیافتم .
شاید هم واقعاً سطح سواد بنده پائین است که درک درستی از توضیحات داده شده نداشته ام.
موفق باشید

سلام
جناب narpco (https://barnamenevis.org/member.php?401153-narpco) درویدئشون دو سوال قابل تأمل پرسیده اندکه اتفاقاً یکی از این سوال ها همیشه سوال من هم بوده ، منظورم اون سوالی که درخصوص حالت ارتباط جداول در قسمت ریلیشن شیب با حالتی که این ارتباط در کوئری ( بدون ارتباط قبلی جداول در قسمت ریلیشن شیب) ایجاد میشود . در قسمت ریلیشن شیب این ارتباط به صورت یک به چند است ولی در قسمت کوئری بصورت یک به یک
در موردسوال اولشون هم در مورد استفاده از lookup wizard در دو حالت وتفاوت این دو حالت ابهام همچنان باقیست.

narpco
چهارشنبه 28 آبان 1399, 23:42 عصر
جناب eb1345/اینکه پاسخ ها در چه حدی اغنا کننده هستند که بنده بدنبال جواب از منابع مختلف هستم و جستجویم منحصر به این سایت نیست شما بزرگوار بخشی از تلاش بنده رو می‌بینید .ولی به هر حال بنده از هر کسی که پاسخی داده صمیمانه سپاسگزارم .مهم تلاش دوستان برای پاسخگویی است .اما بنده در مقامی نیستم که به پاسخ های شما یا سایر عزیزان خورده بگیرم چرا که موضوع برای خودم سوال هست.حال شما هم از سر خیر خواهی میفرمایید که چرا من زود تسلیم شدم یا جواب کامل نیست ! شاید حق با شما باشد ...ولی چه باید کرد فعلا که تنها پاسخی که دریافت کردم از این سایت همینی هست که می‌بینید دیگه کم و زیادش رو شما ببخشید ..و بسیار خوشحال تر می شدم که پاسخ های قطعا موثر شما و سایر دوستان رو هم می خواندم که متاسفانه خیلی بخت با بنده یار نبود .این است که در منابع مختلف همچنان به جستجو ادامه میدم چون سوال من شاید برای همه سوال نباشد و شاید پاسخگویی به آن از حوصله دوستان خارج باشد ...والله حقیقت اینه که انتظار پاسخ از طرف خیلی از اعضا رو داشتم که متاسفانه محقق نشد .ولی بازم شکر مجموعه اطلاعات مفیدی از منابع مختلف کسب کردم .بازم ممنون از شما که به فکر هستید و انشالله اگر روزی شما هم حوصله داشتید بنده خوشحال میشم پاسخ شما رو هم بخونم .ولی حداقل بنده در جایگاه تصمیم گیری در مورد سواد کسی نیستم چون خودم از همه بیسواد ترم و خدایی نکرده نه بنده نه سایر دوستان قصد بی احترامی نه به شما و نه سایر عزیزان رو نداریم .بازم سپاس از محبت شما ...مخلصیم :::)) اتفاقی که برای شما افتاد چند بار برای خودم هم افتاده من اول او word تایپ می کنم ویرایش می کنم بعد کپی می کنم تو این سایت...ولی کاش اینجا امکان صدا هم داشت ....:قلب:

padide55
پنج شنبه 29 آبان 1399, 06:45 صبح
سلام .
به عنوان یک فرد کم تجربه در کد نویسی و اینکه تاحالا از اکسس فقط برای رفع مشکلات اداری خودم استفاده کردم .
پیشنهاد می کنم اول اینکه دوستان زیاد برنامه خودشون رو پیچیده نکنند .زیرا در اینده و برای هر تغییر کوچک به مشکل می خورند .
دوم اینکه اکسس برای برنامه نویسی کوچک خوبه و اینکه روی تمام سیستمها با مجموعه افیس نصب هست .و راحت قابل دسترس .
درحالی که نرم افزارهای دیگه در هر محل باید نصب شوند .تا بشه برنامه نویسی انجام داد که این کار در دسترس کارکنان ادارات نیست .
در اکسس سعی کنید هدف بر استفاده کاربران از این نرم افزار بجای اکسل باشه .تا کارکنان بتوانند به راحتی اپلیکیش های مورد لزوم و کوچک خود را در محیط کارشون ایجاد کنند .توسعه این مسئله در اکسس از همه چیز واجب تره .
اکسس میتونه و این قابلیت رو داره که کاملا عمومی باشه و قدرتش بالاتر از اکسله و اینکه محاسبات رو با یک کلیک انجام میده و یک برنامه نویسی اولیه که انجام بشه. دیگه تمام .
در مورد ریلیشن شیپ
از روزی که سوال ایجاد شد از خودم پرسیدم که چقدر مطالب مورد سوال هم اموزشی بود و هم سوالی .
ولی از ابتدا باید پایه کار رو با مفهوم ریلیشن شیپ ایجاد می کردیم و در انتها به مباحث تخصصی تر می پرداختیم .به همین دلیل اول مطالبی رو گذاشتم که مبحث باز بشه .

padide55
پنج شنبه 29 آبان 1399, 06:51 صبح
ضمنا در اولین پست خودم اگر دقت کنید
سلام.
با توجه به اموزشی بودن موضوع .
ابتدا شرحی بر ریلیشن شیپ داشته باشیم. رو اوردم .
دیدم که تا بحث باز نشه نمیشه به این تاپیک جواب داد .
چون اینجا ممکنه ما به جواب خودمون برسیم ولی این مطالب در سایت باید برای سایر بازدید کننده ها جذابیت داشته باشه و به اموزش ختم بشه و گیج کننده نباشه .همیشه لطف کنید نیمه پر ظرف رو ببینید .
ادامه مطالب در این تاپیک درکنار دوستان خواهم بود . خودم جستجو میکنم و معلوماتم بیشتر میشه .
متشکرم .
ضمنا بنده جایی که کار میکنم هرمشکلی برای نرم افزارهایی که ایجاد میشه و دارند کار میکنند پیش میاد .اول و اخر میان سراغ بنده .چون واقعا سطح اکسس در محیطهای اداری صفر هست .
سعی بشه این موضوع توجه بشه.
در نهایت
اگر بنده مطلبی اینجا میگذارم در حد معلومات خودم هست و اینکه سعی میکنم خیلی ساده باشه و این رو عذرمیخوام از اساتید .
چون هدفم استفاده حداکثری بازدیدکننده های سایت از مطالب هست .

padide55
پنج شنبه 29 آبان 1399, 06:54 صبح
ادامه موضوع اصلی سوال

به نظر من فقط تیبلهای اصلی رو ریلیشن ایجاد کنید و سایر تیبلها رو برای ایجاد ریلیشن بگذارید در زمان لزوم در کوئری .
مثلا ارتباط بین اعضا و‌کتابها و لیست کتابهای ارجاع شده رو از اول ایجاد کنید .
ولی ارتباط جنسیت و مدرک و ... رو هر جا لازم بود در کوئری ایجاد کنید .
و درفرمها از لیست باکس استفاده کنید برای این موارد .


حالا باید بریم سراغ مباحث پیچیده شامل
چه زمانی ریلیشن استفاده کنیم ؟
استفاده تخصصی ریلیشن در فرمها وگزارشات و کوئری ها چکونه است ؟
از اینجا به بعد مبحث رو باید گسترده کرد .
و دوستان کمک کنند و تجربیات خودشون رو به اشتراک بگذارند .

padide55
پنج شنبه 29 آبان 1399, 06:58 صبح
در مورد اول
در زمینه استفاده از لیست باکس .
در تیبل اگر از لیست باکس استفاده نشه هم کار توسط فرمها انجام میشه و در فرم دیتای مورد لزوم با لیست باکس و .. در تیبل ذخیره میشه .
ضمن اینکه اساس کار بر رابط کاربری هست و دسترسی استفاده کننده از نرم افزار رو به تیبل ها باید محدود کرد .
ولی اگر میخواهید به کاربر دسترسی به جداول هم بدین بهتره لیست باکس مربوطه رو در جدول هم بگذارید که کاربر در زمان بازکردن جدول به راحتی اصلاح مورد لزوم رو انجام بده و سریعتر هم به ساختار جدول پی ببره .

padide55
پنج شنبه 29 آبان 1399, 07:32 صبح
مزایای ایجاد ارتباط بین جدول‌‌ها
از طریق ارتباط بین جدول‌ها می‌‌توانید، گزارش‌ها یا پرس و جوهایی ایجاد کنید که روی چندین جدول کار کنند.
اشتباهات در ورود داده‌‌ها کاهش می‌یابد.
بازیابی داده‌ها به سرعت انجام می‌شود.
برای درک بهتر این موضوع بهتر است در مورد کلید اصلی دوباره توضیح دهم و شما را با مفهوم کلید خارجی و ویژگی Index آشنا کنم.

کلید اصلی (Primary key): فیلدی که مقدار آن منحصر به فرد است و مشخص کننده یک رکورد جدول است. کلید اصلی نباید خالی یا تکراری باشد.
کلید خارجی (Foreign key): فیلدی از یک جدول، که با کلید اصلی جدول دیگر مرتبط است.
ویژگی index: همانطور که در آموزش قبل گفتیم یکی از ویژگی فیلدها، index است. این ویژگی می‌تواند یکی از سه مقدار زیر را بپذیرد:
No: اگر این مقدار انتخاب شود، این ویژگی فعال نیست.
(Yes (Duplicate OK: اگر این مقدار فعال باشد، ویژگی ایندکس فعال است و این فیلد در رکوردهای جدول می‌تواند تکراری باشد.
(Yes (No Duplicate: اگر این گزینه انتخاب شود، ویژگی ایندکس فعال است و این فیلد در رکوردهای جدول نمی‌تواند تکراری باشد.

padide55
پنج شنبه 29 آبان 1399, 07:36 صبح
انواع ارتباط بین جدول‌ها در اکسس
رابطه یک به یک: هر رکورد از جدول اول فقط می‌تواند با یک رکورد از جدول دوم ارتباط داشته باشد.
رابطه یک به چند: هر رکورد جدول اول می‌تواند با چند رکورد از جدول دوم ارتباط داشته باشد و رکوردهای جدول دوم فقط با یکی از رکوردهای جدول اول ارتباط دارند. به عنوان مثال ، اگر ما یک جدول اعضای کتابخانه داریم که شامل نام و شماره شناسه و… است، این سمت “یک” رابطه است. حالا ما یک جدول تحویل کتاب نیز داریم که شامل شماره سففارش کتاب در کلید اصلی و شماره شناسه عضو به عنوان کلید خارجی (کلید اصلی در جدول اعضا) است. در جدول تحویل کتاب ممکن است چندین سفارش برای یک عضو کتابخانه وجود داشته باشد. این طرف “چند” رابطه است. برای ایجاد یک رابطه یک به چند، کلید اصلی را در “یک” طرف رابطه بگیرید و آن را به “چند” رابطه اضافه کنید.
رابطه چند به چند: رابطه‌ای که هر چند رکورد از دو جدول می‌توانند با یکدیگر ارتباط داشته باشند. برای ایجاد رابطه چند به چند در Access، باید یک جدول سوم ایجاد کنید. این جدول، جدول اتصالات نامیده می‌شود. جدول اتصالات روابط چند به چند را به دو رابطه یک به یک تقسیم می‌کند. کلید اصلی را از هر یک از جدول‌ها در جدول سوم قرار دهید. در نتیجه جدول سوم هر نمونه از رابطه را حفظ می‌کند.

padide55
پنج شنبه 29 آبان 1399, 07:42 صبح
انواع اتصال در پایگاه داده
اتصال داخلی (An inner join)
اتصال خارجی (An outer join)
اتصال داخلی: با انتخاب گزینهٔ اول در پنجرهٔ Join properties فقط رکوردهایی در پرس و جو ظاهر می‌شوند که در هر دو جدول دارای مقادیر مطابق هستند. در اکسس این حالت به صورت پیش فرض وجود دارد.
اتصال خارجی به صورت چپ یا راست به صورت زیر :
اتصال خارجی سمت چپ: پرس و جو شامل تمام رکوردهای جدول اول و فقط رکوردهایی از جدول دیگر و شامل مواردی است که در هر دو جدول یکسان است.
اتصال خارجی سمت راست: پرس و جو شامل تمام رکوردهای جدول دوم و فقط آن دسته از رکوردهایی که با مقادیر جدول اول مطابقت دارند می باشد.

narpco
جمعه 30 آبان 1399, 11:14 صبح
دوست گرامی
atf1379 (https://barnamenevis.org/member.php?429279-atf1379)
https://barnamenevis.org/images/statusicon/user-offline.png

در مورد سئوال شما در پست 13 خیلی ساده عرض کنم که من به این نتیجه رسیدم اگر در محیط ریلیشن شما ارتباط بین جداول اصلی و فرعی داشته باشید ...
در کوئری هم این روباط همانند محیط ریلیشن دیده میشود مثلا یک به چند

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

اما اگر بخوایید دستی ارتباط برقرا کنید چون نمیفهمه در ابتدا چطور رابطه ای باید برقرار کنه ....خودش یک به یک برقرا می کنه میتونید روی خط ارتباط دهنده کلیک کنید و فقط میتونید نوع جوین تایپ رو تغییر بدین نه نوع ریلیشن رو --و اینکه چرا فقط یک خط بدون هیچ علامتی رسم میکنه که علامت 1 به 1---یک به چند و چند به چند رو نمی بینید چون به لحاظ محیط با محیط ریلشن شیب فرق میکنه قانون هاش و ارتباط در کوئری به دلیل واکشی دیتا انجام میشه نه ایجاد ارتباط ---برای مشخص کردن هرنوع ارتباطی باید در محیط ریلیش شیب تصمیم بگیرید و اجرا کنید

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

****
در صحبت با سایر دوستان برنامه نویس هم به این نتیجه رسیدم که بطور خلاصه :
اول اینکه :
در اکسس با استفاده از lookup میشه مقدار یک فیلد رو از نتیجه یک کوئری select گرفت. که نهایتا این فیلد بصورت کمبو و یا لیست قابل انتخاب است.
که در این حالت لازمه نوع فیلد بصورت کمبو یا لیست باشه.


دوم:
بحث lookup و relationship ها جدا از هم هستند. در واقع در ادامه lookup ویزارد میرسیم به relation. در حالی که بدون هیچ رابطه ای هم میشه ویزارد لوکاپ رو تکمیل کرد.
حالا لوکاپ میتونه کوئری خود رو از یکی از جداول بگیره یا داده هایی که دستی وارد میشن و به هیچ جدولی ربطی نداره.


سوم:
ارتباط دهی یا همون ریلیشن شیپ ها بهتره که انجام بگیرند.
از مهمترین مزیتهاش میشه گفت:
اطمینان از صحت داده های وارده
بهینه سازی واکشی اطلاعات
و بحث navigation ها در در تکنولوژی های جدید روی پایگاه داده sql server که بر اساس همین روابط هستند.