ST. LOUIS (AP) — —
"He got tough with guys on base, no doubt about it," Padres manager Bud Black said. "He's a veteran pitcher with a lot of know-how.
"We had good swings against an All-Star pitcher. To a man, we fought him. He knew it."
Yonder Alonso singled three times with an RBI for the Padres. Eric Stults (8-8) allowed three runs and eight hits in six innings, stranding two runners in the second and fifth, falling short in a bid to win three straight starts for the first time in his career.
"This is a team where they get guys on base and they get in kind of a swing mode, they want to score quick," Stults said. "That third inning got away a little bit."
Wainwright matched his season high for walks after entering with a NL-low 15 in 146 2-3 innings. He had only one perfect inning but got key outs with breaking balls and struck out Everth Cabrera with a man on third to end the seventh.
Wainwright is 5-2 with a 1.47 ERA against the Padres after beating them for the second time this season.
The first four Cardinals reached safely in the third capped by David Freese's two-run double when center fielder Alexi Amarista missed a diving catch and the ball went to the wall.
Freese was thrown out at third on strong relays from right fielder Will Venable and Cabrera and the Cardinals had just one more runner in scoring position the rest of the way.
Matt Carpenter opened the third with a double off the base of the wall in right-center for his second straight hit and leads the majors with 39 multi-hit games.
Cabrera led off the game with an opposite-field double, a chopper down the third-base line that Wainwright called a "doink fest," and scored on Alonso's two-out hit.