Query vs form with child & parent: Deleting rows



When I delete a row from a query involving both parent and child rows, what
determines which rows are deleted from the source tables?

When I display a joining query in data*** mode and manually delete one of
the rows, only the record from the child table deleted, as I intended. But
when I display this query in a form and delete a row from there, it deletes
the source record from both the child and the parent tables. It doesn't seem
to make any difference whether the join is inner or outer, nor even whether I
display parent data in the form. I've been trying for a while to figure out
exactly why it happens this way with this particular form and no others, and
I'm whipped. Anyone know the rules for this sort of thing?

I'm not sure what details to specify, so I'll wait for some helpful soul to
ask.
.