Eckstein's only hit in his lone at-bat came with the bases loaded and one out in the bottom of the 10th off losing pitcher Esmerling Vasquez (0-1).
San Diego's Scott Hairston and Nick Hundley both had to hits and one RBI. Edgar Gonzalez hit a fifth-inning RBI single, while Kevin Kouzmanoff had two runs and three hits for the Padres, who salvaged a two-game split and have lost 13 of 17.
The winner was Cla Meredith (4-0) after a scoreless 10th inning.
Arizona starter Dan Haren doubled in a run with no outs in the top of the third, one of five Arizona hits. Haren had yielded two or fewer runs in his six previous starts.
Felipe Lopez hit a third-inning sacrifice fly and Justin Upton had a run and two hits for the Diamondbacks, who lost for the fourth time in five games.
Beautician charged with giving client fatal silicone butt injection
Attkisson leaves CBS News, reportedly over network's 'liberal bias'