Rochdale kept up their push for automatic promotion from League Two with victory at Exeter.
The Grecians are without a win at St James Park since 5 October and they went down to Jamie Allen's goal on the stroke of half-time.
John O'Flynn blazed a gilt-edged chance over for the hosts, and Allen made them pay when he tapped in after his first effort was saved.
Matthew Lund hit a post for Dale as Exeter struggled after the break.
Rochdale manager Keith Hill told BBC Radio Manchester:
"I thought we managed the game with and without the game superbly. We created really good opportunities.
"It's great to get a clean sheet. Clean sheets ultimately, for me, win games.
"We trust every one of these players and they trust me with the decision-making.
"My players are free of pressure. We've already achieved an enormous amount this season and we'll continue to do that as long as we play happy."
Exeter City 30 Pym 02 Butterfield 03 Woodman 08 Oakley 06 Coles 04 Bennett 07 Sercombe 29 Grimes 19 O'Flynn (Wheeler - 76' ) 22 Keohane (Nichols - 45' ) 11 Davies (Richards - 45' ) Substitutes 14 Richards 15 Moore-Taylor 20 Nichols 25 Parkin 32 Wheeler 33 Hamon 35 Gill Rochdale 01 Lillis 02 Rafferty 16 Done 04 Cavanagh 06 Lancashire 22 O'Connell Booked 40 Henderson 12 Lund (Kennedy - 90' ) 11 Hogan (Vincenti - 70' ) 24 Allen Booked (Donnelly - 70' ) 25 Rose Substitutes 05 Eastham 07 Vincenti 08 Kennedy 09 Donnelly 10 Gray 15 Porter 21 Thomson
Ref: Andy Woolmer