ATLANTA — Dan Uggla hit a three-run homer, Michael Bourn also went deep and the Atlanta Braves snapped their longest losing streak in more than two years, holding off the St. Louis Cardinals 5-4 Tuesday night after an eight-game skid.

“This is not an indication of what’s going to happen the next day or the next week or the next month,” Uggla said. “But it definitely snaps the feeling of, ‘Aww, man, are we ever going to win again?’

“Everyone knows how bad we’ve been scuffling. When you get that first one, it eases the tension, eases the pressure. We know what it feels like to win again.”

Randall Delgado (3-5) worked into the sixth, allowing three runs, and the Cardinals got closer in the seventh on Yadier Molina’s third RBI of the night, a run-scoring single. He went 4 for 4, including a solo homer.

 

REDS 8, PIRATES 1: Jay Bruce had three hits, including a pair of doubles, Todd Frazier drove in two runs to cap an eventful day and Cincinnati won at Pittsburgh.

Frazier doubled and tripled in his first two at-bats hours after saving a Pittsburgh restaurant-goer from choking on a piece of steak by giving him the Heimlich maneuver.

 

MARLINS 3, NATIONALS 1: Anibal Sanchez allowed only an unearned run in seven innings to remain unbeaten in 19 starts against Washington, and Miami won at home to break the franchise record for victories in a month (20).

 

CUBS 5, PADRES 3: Alfonso Soriano homered, Jeff Samardzija struck out eight in seven innings and Chicago beat visiting San Diego.

 

METS 6, PHILLIES 3: Jeremy Hefner earned his first victory in the majors, highlighting the occasion by homering for his first big league hit as New York won at home.

AMERICAN LEAGUE

ROYALS 8, INDIANS 2: Mike Moustakas had a career-best four RBI to help rookie Will Smith get his first major league win, leading Kansas City at Cleveland.

 

WHITE SOX 7, RAYS 2: Philip Humber won for the first time since throwing a perfect game in April, and visiting Chicago extended its winning streak to seven.

Hideki Matsui homered in his Tampa Bay debut.

 

BLUE JAYS 8, ORIOLES 6: Brett Lawrie had three hits and three RBI for Toronto, and Ricky Romero won for the seventh time in nine starts against visiting Baltimore.

Romero (6-1) improved to 7-1 with a 2.43 ERA in his past nine starts against the Orioles.

Adam Jones hit two homers, extending his hitting streak to 20 games, and Chris Davis added a two-run drive in the ninth but it wasn’t enough for Baltimore.

 

MARINERS 10, RANGERS 3: John Jaso drove in three runs, Jason Vargas pitched into the seventh inning and visiting Seattle snapped a five-game losing streak.

Josh Hamilton hit his majors-best 21st homer and drove in all three runs for the Rangers.

 

TWINS 3, ATHLETICS 2: Josh Willingham hit a three-run homer in the ninth inning to lift Minnesota over visiting Oakland, which lost its seventh straight.