SAN FRANCISCO (AP) Everybody in the Arizona dugout was rooting for Rubby De La Rosa to get his first complete game. They were no less disappointed when Daniel Hudson preserved the victory.
De La Rosa pitched an eight-hitter into the ninth inning Sunday, and the Arizona Diamondbacks chased Chris Heston after five innings in his first start coming off a no-hitter and beat the San Francisco Giants 4-0.
Heston pitched his gem against the New York Mets on Tuesday in his 13th major league start. His shot at matching Johnny Vander Meer's record of throwing consecutives no-hitters in 1938 ended with one out in the second when Jake Lamb doubled.
The rookie right-hander gave up three runs - two earned - on seven hits. He walked four and struck out two. Heston (6-5) had won four of his previous five decisions.
''Chris threw all right. He worked hard,'' Giants manager Bruce Bochy said. ''He made more mistakes than normal but that was a good enough effort to keep us in the game.''
Chris Owings drove in two runs for Arizona.
''A lot of guys had good at-bats,'' Owings said. ''It was easy to go out there and compete with Rubby pitching his butt off.''
De La Rosa (5-4) won for the first time since May 12, a span of six starts. He walked two and struck out six in eight-plus innings.
''I 100 percent wanted to get the last three outs,'' De La Rosa said. ''I kept the ball low, the rhythm was good and the team helped me out a lot.''
Hudson took over for De La Rosa following Joe Panik's double and Brandon Belt's single. He struck out Brandon Crawford and walked Casey McGehee to load the bases.
Buster Posey entered the game as a pinch hitter but Hudson got him to ground into a double play for his first career save.
''That was kind of a rush to be honest,'' Hudson said. ''It's completely different from being a starter. I had to figure out how to control my emotions. My heart was pounding.''
The Giants thrice hit into double plays with a runner on third, and hit into five overall. Crawford, in his first start as a cleanup hitter, had two hits for the Giants.
''This was one of our ugliest games,'' Bochy said. ''The double plays, the errors; it was not pretty.''
The Diamondbacks won six of their first seven games at AT&T Park and are not due to return until the middle of September. They own a 7-3 overall series lead.
The Giants lost their fourth straight overall and have lost eight in a row at home for the first time since 1993.
Lamb scored the game's first run on a two-error play by Crawford, who lost the handle on a grounder by Wellington Castillo and then overthrew first base to allow the run. Owings doubled home two runs in the fifth.
In the sixth, Ender Inciarte reached second on a fielding error by Jason Maxwell, who was in center field with Angel Pagan getting the day off and Gregor Blanco on the 7-day concussion list. After stealing third without a throw, Inciarte scored on A.J. Pollack's sacrifice fly.
Giants' Jarrett Parker singled in the fifth, his first major-league hit.
Diamondbacks: Left-hander Patrick Corbin, recovering from Tommy John surgery last year, saw his first action Sunday with Double-A Mobile. He needed just six pitches to get through the first inning and threw 4 2-3 innings overall.
Giants: Blanco continues to feel the effects of a concussion and may not be ready to play when he is eligible on Tuesday.
Diamondbacks: LHP Robbie Ray (1-1, 1.53) starts Monday night against the Los Angeles Angels in Anaheim. His last start was in Los Angeles against the Dodgers, a loss. The Angels hold a 12-9 edge in the series with Arizona.
Giants: RHP Tim Hudson (4-5, 4.60) makes the start when the Seattle Mariners come to town for a game Monday night. Hudson has a 13-6 record with a 3.17 ERA in 24 starts against the Mariners.