ST. PETERSBURG, Fla. -- A rare late comeback kept Dave Bush from a second straight tough loss.
Bush (5-8) and Scott Kazmir faced each other for the second time in six days. The Blue Jays right-hander gave up two runs and four hits. Kazmir struck out a career-high 11 in seven innings, allowing one unearned run and six hits.
"Both were dealing," Toronto manager John Gibbons said. "Bush has pitched so good lately and got nothing to show for it."
Kazmir was looking for his second consecutive win against the Blue Jays. He had nine strikeouts in seven innings of a 1-0 victory over Bush -- who also went seven innings -- last Sunday at Toronto.
"I felt like I got into a groove right in the beginning," Kazmir said. "I just kept attacking hitters."
Zaun tied it at 2-all with his pinch-hit single off closer Danys Baez (5-4). Adams then followed with the go-ahead hit as Baez blew a save for the eighth time in 43 chances.
"It was almost a mirror image of last week's game when they matched up," Adams said. "Last week they got the win and tonight we were able to scratch out a win for Bush. To pitch the way he pitched in both the last two games he definitely didn't deserve to get two losses for it. It feels good to give him the win and good for our club."
Toronto won for only the second time in 64 tries when trailing after eight innings.
"I put myself in position to win," Bush said. "It doesn't always work out for you. The biggest thing to do is keep making my pitches to stay in there. I knew going in it would be tough to score against Kazmir."
Miguel Batista pitched the ninth for his 27th save in 33 chances.
The 21-year-old Kazmir has 160 strikeouts this season, the most by an AL rookie since Cleveland's C.C. Sabathia's 171 in 2001.
"I think he was getting better as the game progressed," Tampa Bay manager Lou Piniella said. "Seven real good innings."
Damon Hollins put Tampa Bay up 2-1 with a two-run homer in the fourth. It was his 12th of the season, but the first since Aug. 3.
The Devil Rays are 31-23 since the All-Star break. They have lost a major league-high 15 times when ahead after seven innings this year.
"Tough loss," Piniella said. "You lose close ballgames, they're all tough."
Toronto took a 1-0 lead when shortstop Julio Lugo was charged with an error for a bad throw to first on Guillermo Quiroz's two-out infield single in the second, allowing Alex Rios to score from second. Quiroz stopped an 0-for-10 slide.
The announced crowd was 10,984, which gives Tampa Bay a home attendance of 978,659 in 71 dates. The Devil Rays remain the only team in the majors not to reach the 1 million mark this season.
Kazmir has struck out 10 or more three times this year. ... Baez had converted his previous 16 save chances. ... Blue Jays CF Vernon Wells doubled in the third to stop an 0-for-13 stretch. ... Tampa Bay C Toby Hall hasn't homered since in his last 230 at-bats, dating to June 7. ... Toronto 2B Aaron Hill was hitless in 20 at-bats before his fourth-inning single. ... Blue Jays 3B Corey Koskie struck out in all three at-bats against Kazmir. ... Tampa Bay has lead in 22 of the past 24 games, but are 13-11 over the stretch.