R.A. Dickey snapped a four-start winless streak, Melky Cabrera had four hits against his former team and the Toronto Blue Jays beat the San Francisco Giants 10-6 on Tuesday night.
Edwin Encarnacion drove in two runs and scored twice as the Blue Jays had a season-high 18 hits and won three straight games for just the second time this season.
Dickey (3-5) struck out a season-high 10 in six innings, allowing two runs and six hits, to win for the first time since April 18 against the Chicago White Sox.
Brett Cecil worked the seventh and Brad Lincoln pitched the final two innings.
Brandon Belt hit a solo homer and Pablo Sandoval added a three-run shot off Lincoln in the ninth but it wasn't enough for the NL West-leading Giants, who came in having won three straight and 10 of 13.
Cabrera went 4 for 5 with two RBIs. He reached on an error and hit an RBI single in Toronto's six-run first, singled again in the fourth and sixth and doubled home a run in the seventh.
Before the game, Giants manager Bruce Bochy presented Cabrera with his 2012 World Series ring in a private ceremony in the weight room. The MVP of last year's All-Star game, Cabrera was suspended 50 games Aug. 15 for a positive testosterone test, and was later left off San Francisco's postseason roster. He signed a two-year $16-million deal with Toronto in November.
Barry Zito, who has won just once in six starts, allowed eight runs, five earned, and a season-high 12 hits in 5 2-3 innings. The lefty, who walked two and struck out two, fell to 1-4 with a 5.40 ERA in six career starts at Rogers Centre.
The Blue Jays jumped on Zito (3-2) in an 11-batter first, taking advantage of two Giants errors. Cabrera reached on a throwing error by Sandoval and Jose Bautista walked before Encarnacion hit an RBI single, advancing to second when Hunter Pence threw home.
Mark DeRosa followed with a liner to center, driving in Bautista, and Encarnacion scored when outfielder Angel Pagan bobbled the ball.
Colby Rasmus, Emilio Bonifacio and Cabrera added RBI singles, giving the Blue Jays their biggest inning of the season.
The Giants got one back in the second on a two-out RBI single by Nick Noonan after back-to-back walks by Dickey.
Belt's fifth homer, a solo shot off the facing of the second deck in right in the fourth, cut it to 6-2, but the Blue Jays chased Zito and scored three more runs with a two-out rally in the sixth.
George Kontos came on after singles by Cabrera and Bautista, then gave up an RBI double to Encarnacion, an RBI single to pinch-hitter Adam Lind and an RBI double to Brett Lawrie.
Belt had an RBI double off Lincoln in the eighth, and Sandoval made it 10-6 with his seventh homer in the ninth.
Former Blue Jays infielder Marco Scutaro, who started at DH, extended his hitting streak to 13 games with a single in the third. He finished 3 for 5.