نمودار بالا را در نظر میگیریم
سه حالت در نظر میگیریم
حالت اول) حالتی است که چه یک طرف ضروری باشد چه دو طرف غیرضروری باشند قابل اجراست. در این حالت سه رابطه داریم
Motor ( motor# , capacity )
Car ( car# , model )
CarMotor ( car# , motor# )
مشکل این حالت این است که ضروری بودن موجودیت Car را باید خودمان بررسی کنیم. یعنی باید کنترل کنیم که همهی نمونههای Car در یک رابطهی مالکیت با یک نمونهی Motor باشند.
حالت دوم) در این حالت از دو رابطه استفاده میکنیم.
Motor ( motor# , capacity )
Car ( car# , model , motor# )
در این حالت اگر سیستم اجازهی Null بودن کلید خارجی را ندهد، میتوانیم مطمئن باشیم که هر Car در یک رابطهی مالکیت بودن با Motor شرکت میکند. چون car# کلید اصلی و یکتاست بنابراین دقیقاً هر Car یک Motor خواهد داشد.
در صورتی که سیستم اجازهی Null بودن کلید خارجی را بدهد، باید یکی بودن شرکت Car را بررسی کنیم
حالت سوم) در این حالت تنها از یک رابطه استفاده میکنیم.
Motor ( motor# , capacity , car# , model )
البته این تنها در صورتی است که سیستم اجازهی Null بودن کلید خارجی را بدهد. تا بتوانیم Motor بدون Car داشته باشیم. در این حالت باید car# را هم در رابطه به صورت یکتا تعریف کنیم.