PHOENIX -- Eric Stults had a terrific night as a pitcher and a career night as a hitter.
While the Stults' hits will get most of the attention, "really the game tonight was how he pitched," manager Bud Black said. "It really was. He had command on all four pitches and changed speeds on the fastball, which he does, had the Diamondbacks off balance."
|More on Padres-Diamondbacks|
|More MLB coverage|
The range of speed in Stults' pitches, Black said, was from 66 mph to 91 mph.
"He was good," Arizona's Chris Johnson said. "He was working in, working out. His change-up was pretty good then he started throwing that slow curve ball the second time and third time we faced him. When a guy throws multiple pitches like that for a strike, it keeps you off balance and we couldn't stay back and get anything going."
Stults (4-2) allowed three singles, struck out four and walked one. He singled in two runs in the second and doubled home another in the fourth.
"I don't know. I think it's just luck most of the time,"' he said of his success at the plate. "I go up there just trying to put the barrel on the ball and was able to get hits, which I think was big because we had runners on base."
Chris Denorfia hit a solo home run off rookie Patrick Corbin (5-5) in the third and brought another run home with a sacrifice fly in the seventh.
The Padres, coming off a three-game home sweep of Pittsburgh, have won five in a row. They are 4-0 at Arizona this season.
Nick Vincent and Tommy Layne each pitched an inning to complete the shutout.
The Diamondbacks fell to 2-3 halfway through a 10-game home stand. San Diego outhit Arizona 13-4.
After Chris Young opened the Arizona first with a line-drive single off the glove of third baseman Chase Headley, Stults retired 11 in a row before Paul Goldschmidt drew a two-out walk in the fourth. The only other runners to reach against the San Diego left-hander were Chris Johnson and Gerardo Parra, who singled to start the fifth.
"There were some line drives that were hit and were hit at guys," Stults said. "Especially for me, to go deep into games, that has to happen."
Stults provided himself with a 2-0 lead in the second.
Singles by Yasmani Grendahl and Yonder Alonso, followed by a two-out walk to Everth Cabrera loaded the bases in the third, Stults singled to bring two runners home before Cabrera was caught in a rundown on the play to end the inning.
After Denorfia's opposite-field shot, just his fifth homer of the season, made it 3-0, Stults contributed again in the fourth. Cameron Maybin doubled and, with two outs, Stults doubled to the gap in left-center to bring the runner home.
Corbin, who had been 3-0 in four starts since returning to the rotation, finished the inning but that was it. He allowed four runs on nine hits, striking out two and walking one.
"He didn't have very good stuff," Arizona manager Kirk Gibson said. "He wasn't locating well. His pitches were up."
Stults, Gibson said, "had very good location."
"He mixed it up very well. He was throwing the ball well. We beat him up pretty good here last time. He made some adjustments and we didn't swing the bats very well.
[This time] he had better location and he threw all his pitches where he wanted to. We really didn't hit too many balls hard.
Goldschmidt made a standout unassisted double play at first in the opening inning. With Denorfia on base with a single, Goldschmidt lunged to catch Logan Forsythe's line drive, then in the same motion made a sweeping tag of the runner. He got the third out of the inning unassisted as well on a ground ball.
Gibson says LHP Tyler Skaggs will remain with the big league club after his impressive debut on Wednesday. The youngster will be part of what, for now, is a six-man rotation, including three lefthanders. ... Stults improved his season batting average to .375 (6 for 16). Playing for the Los Angeles Dodgers, he had two RBIs in 2008 and two in 2009. ... The Padres are 4-0 at Arizona this season but 2-4 at home against the Diamondbacks. ... San Diego can match its longest winning streak of the season at six games with a win on Saturday night. ... The Diamondbacks have lost five of their last six series openers.