тьфу ты. в секции WHERE вместо "and" запятые повставлял. Вот что значит писать запрос когда дергают. Я собственно писал по общим правилам SQL, возможно в акцессе другой синтаксис, хотя вряд-ли. Попробуй сделать такой ситаксис:
ADOQuery5.Active:=false;
ADOQuery5.SQL.Clear;
ADOQuery5.SQL.Add('SELECT et.*, st.`Название`, dd.`Пилот`');
ADOQuery5.SQL.Add('FROM Etapy et, Strana st, dr_dannie dd, Prohojdenie
pr');
ADOQuery5.SQL.Add('WHERE et.`Код_этапа`=
pr.`Код_этапа` AND et.`Код_стр`=st.`Код_стр` AND dd.`Код_стр`=st.`Код_стр` AND
pr.`№машины`=dd.`№_машины` AND st.`Название`="'+dbedit1.text+'" AND dd.`Пилот`="'+dbedit5.text+'"');
ADOQuery5.Open;
Такой синтаксис будет работать на MySQL но не уверен что на акцесе будет. Так что правь синтаксис. И не надо игнорировать WHERE, его достаточно тут. И блин, на будущее используй латиницу в названиях полей. Переименовать их можно позже в программе, а источников глюков будет меньше.