The Pirates jabbed and parried for nine innings Wednesday with a division rival currently locked in a playoff run.
Charlie Morton let 10 St. Louis Cardinals on the basepaths, but prevented all but three from scoring.
The Pirates offense stroked five doubles, but even a headfirst slide at the plate could not increase the total of runs.
Two diving catches robbed the Cardinals of hits in the late innings.
Game: Pirates at Dodgers, 10:10 p.m., Dodger Stadium.
TV, radio: Root Sports, WPGB-FM (104.7).
Pitching: RHP Ross Ohlendorf (0-2, 8.03) vs. LHP Dana Eveland (2-0, 0.60).
Key matchup: Ohlendorf vs. his fastball. He left too many up in the zone in his previous start while allowing six runs on 10 hits in two-plus innings.
Hidden stat: Eveland allowed one run in eight innings against the Pirates in his first major league start of the season Sept. 1.
The almost-there performance, fittingly, fell just short as the Cardinals' 3-2 win at PNC Park delivered the Pirates' 82nd loss and a record 19th consecutive losing season.
The Cardinals, who recently rejoined the playoff chase, won the series, 2-1, and have won seven of their past eight games.
"We got to situations in the last two games where we had people in position to make plays or do things and score runs," manager Clint Hurdle said. "We didn't. They did. That's why they're in a pennant chase and we're not."
Morton returned from skipping a start and pitched seven innings of three-run ball, but lost his 10th game this season.
Derrek Lee and Alex Presley had multi-hit afternoons, but the Pirates went 2 for 12 with runners in scoring position.
Yadier Molina's two-run double in the fourth gave Edwin Jackson and the Cardinals pitching staff the lead, and they held on.
Marc Rzepczynski, who had so much trouble Monday, combined with former Pirate Octavio Dotel and Jason Motte to close out the game. Jackson (5-2) allowed two runs in 62/3 innings, and Motte earned his seventh save and second in as many days.
Morton had not pitched since Sept. 4, but, in his four previous starts this season when he pitched after at least six days of rest, he was 3-0 with a 0.71 ERA. That kind of production continued.
"I thought he pitched a quality ballgame out there today," Hurdle said. "Just a real good effort from Charlie across the board."
But Morton made a few mistakes like walking Lance Berkman and hitting Allen Craig with a pitch to set the table for Molina's double.
He walked three overall and struck out six, using his breaking pitches to get a bunch of swings and misses and escape some jams.
"Charlie had a plus-plus cutter and a plus-plus breaking ball today," catcher Michael McKenry said. "He was throwing it in the zone for strikes and out of the zone, getting some good chases by some of their best hitters."
Morton struck out Berkman with two men on in the first and got Craig and Skip Schumaker swinging to strand Berkman at third after his triple in the sixth.
"I was kind of attacking guys how I wanted to go after them, especially lefties," Morton said.
Ryan Ludwick robbed Ryan Theriot of a base hit in the eighth and Neil Walker dived and caught Nick Punto's liner with a man on third to end the ninth.
Tony Watson and Jared Hughes each pitched a scoreless inning in relief.
Lee had three hits, the most crucial a two-out double in the sixth that scored Presley, who had doubled for the second time.
"[The count] was 3-1 but I didn't want to be overly aggressive" said Lee, who has 17 hits in his past 41 at-bats.
"[Jackson] had thrown me a lot of sliders that at-bat. I was looking out over the plate, trying to stay centered.
"He threw a fastball out over the plate."
McKenry doubled in the third and scored on Presley's double to tie the score at 1-1.
"He's managed his at-bats well, he continues to work on his short game, he continues to work on his running game," Hurdle said of Presley.
The Cardinals doubled twice in the first and scored once. Rafael Furcal hit the first pitch down the right-field line, took third on Jon Jay's sacrifice bunt and scored on Craig's double.
Lee singled and Ludwick doubled, putting men on second and third with none out in the second, but the Pirates failed to take advantage of it.
Pedro Alvarez grounded to first, and Albert Pujols threw home to catch Lee at the plate. Ronny Cedeno then grounded back to Jackson to trigger a 1-6-3 double play.
The Pirates begin a seven-game road trip against the Los Angeles Dodgers tonight.
Bill Brink can be reached at firstname.lastname@example.org . First Published September 15, 2011 4:00 AM