Create table owner (ownerid int PRIMARY KEY, ownername varchar(50) not null)
Create table dog(ownerid int, dogid int, dogname varchar(50), CONSTRAINT pk_col PRIMARY KEY (ownerid, dogid), constraint fk_col foreign key (ownerid) references owner(ownerid) );
Это лучшее решение, которое вы можете иметь. Что означает дизайн таблицы, так это то, что у вас есть список владельцев в таблице владельцев, а в таблице собака есть только те записи, в которых владелец существует в таблице владельцев, которая является родительской таблицей, и у него есть собака. Это только те щенки, у которых есть хозяин, имеют доступ к столу собаки.
Запрос для поддержки ваших требований.
SELECT owner.ownerid, dog.dogid, dog.dogname FROM owner, dog
WHERE owner.ownerid = dog.ownerid