ต้องลบจาก ข้างในออกมาข้างนอกครับ นั่นคือ ลบ product ก่อน ร้าน
โดยที่
ก่อนลบร้าน select s_id where m_id = xxx ออกมาก่อน
foreach(s_id as value){
delete from product where s_id = value
}
delete from shop where m_id = xxx
delete from member where m_id = xxx