PHOENIX -- Kevin Quackenbush took his first big-league loss in dramatic fashion, giving up a two-run, walkoff homer.
Less than 24 hours later, the rookie left-hander quickly erased that memory with his first win in the majors.
"We talked about that this afternoon, his ability to come back and put that behind him," Padres manager Bud Black said. "Somebody asked me today about Quack and a rookie pitcher, how he would handle a walkoff. I think we saw the answer to that."
Eric Stults pitched six effective innings to match Wade Miley before giving up a couple of runs that allowed Arizona to tie the game at 3-all.
Tommy Medica put the Padres ahead with a solo homer to left off Evan Marshall (2-1) in the eighth and Huston Street worked a perfect ninth for his 15th straight save. That helped Quackenbush (1-1) earn the victory after giving up a two-run homer to A.J. Pollock the night before.
"It's a dream come true; I've wanted it since I was a little kid," said Quackenbush, who had a hard time shaking the smile off his face. "Really no words for it now."
Miley gave the Diamondbacks a chance, shaking off a rough third inning with a career-high 11 strikeouts in seven innings. Martin Prado ended a long homerless streak with a solo shot in the second and Arizona rallied to tie it after trailing 3-1 early.
The Diamondbacks just couldn't get the big hit when they needed it, stranding eight runners while going 1 for 9 with runners in scoring position.
"There were a lot of opportunities out there, but guys made good pitches," Arizona manager Kirk Gibson said.
Stults had a rough go of it his last outing, failing to get out of the fourth inning after giving up five runs and six hits in a loss to the Chicago Cubs.
The left-hander had the Diamondbacks guessing through the early innings Tuesday night, keeping them off-balance with a big-breaking curveball that dipped into the 60s with an upper 80s fastball.
Prado, who has battled knee problems this season, got a pitch he liked in the second inning, sending a towering solo homer over the wall left, his first in 210 at-bats, dating to last season.
Miguel Montero hit a run-scoring double in the sixth inning and Stults was lifted after Cliff Pennington led off the seventh with a double on a ball right fielder Chris Denorfia appeared to lose in the lights.
Gerardo Parra tied the game at 3-all by lining a run-scoring single to left off Alex Torres.
Stults allowed three runs and six hits and walked four -- one intentional.
"Changed speeds, made pitches, we made some plays behind him," Black said. "I thought Stultsy pitched well."
Miley had a solid outing his last time out, allowing three runs in seven innings in a loss to the St. Louis Cardinals on Thursday.
The left-hander spotted his fastball well and had the Padres swinging and missing -- except in the third inning.
Everth Cabrera lined a one-out single to start the inning, then Denorfia, Chase Headley and Medica followed with run-scoring singles, putting San Diego up 3-1.
Miley was good after that, ringing up three more strikeouts on called third strikes to become the first Arizona left-hander with at least 11 strikeouts since Randy Johnson on Aug. 22, 2008, against Florida. Miley allowed three runs and eight hits.
"I had a pretty good fastball tonight," Miley said. "I was able to locate it in and out."
Diamondbacks LF Mark Trumbo is expected to hit in the batting cage on Wednesday, a first since he went on the DL with a stress fracture in his left foot on April 24. ... Padres C Yasmani Grandal left the game in the seventh inning after being hit on the back of his glove hand by Paul Goldschmidt's bat. He was called for catcher's interference on the play. X-rays were negative, though Black said he likely won't play Wednesday. ... Arizona RHP Chase Anderson will start in the series finale on Wednesday after his previous outing was cut short to three innings due to rain. RHP Tim Stauffer will pitch for the Padres after making his first start in the majors since 2012 last Friday.