HOUSTON -- J.D. Martinez has had a bad month at the plate.
The Houston Astros hope his big hit Tuesday night will help turn things around.
Martinez had the go-ahead RBI single in the sixth inning and Jose Altuve had a solo homer to give the Houston Astros a 2-1 victory over the Cubs.
The loss extended the Cubs' losing skid to a season-long eight games.
Alfonso Soriano led off the fourth inning with a solo shot to left-center that tied the game at 1-1. The home run marked the first time in four games that the Cubs had scored before the ninth inning.
Soriano has 4 homers in the last eight games but is unhappy that none of those have helped the Cubs to a victory.
"The more important thing is to get wins," he said. "I don't know what we have to do to win one game and hit more, because right now we are struggling."
Martinez hit .282 in April, but is 6-for-50 in May to drop his average to .219.
"There's no doubt that he's probably been pressing a little bit and trying to do a few things, and it was a big hit," Houston manager Brad Mills said. "To come through at that time of the game and get that hit is definitely something (good)."
The hit by Martinez was the first for Houston since the first inning, but Justin Maxwell and Carlos Lee both drew two-out walks before it to set up the score.
"I was glad I was able to come through for the team tonight," Martinez said. "I know they've been behind me and they've been pushing me."
Houston starter J.A. Happ (4-3) allowed 5 hits and a run in 6 innings for the win. Closer Brett Myers pitched a perfect ninth for his 11th save.
Altuve hit a leadoff home run in the first inning.
Jed Lowrie followed with a ground-rule double before Cubs starter Travis Wood (0-1) settled down and retired the next eight batters. Lowrie walked with two outs in the third inning before Wood retired another nine in a row.
He got some help from his defense on the second out in the sixth inning when Soriano robbed Lowrie of a hit with a nifty catch in left field. After the catch Soriano took the ball out of his glove and planted a kiss on it before throwing it back in.
Maxwell's walk after Soriano's catch chased Wood. He was replaced by Shawn Camp, who walked Lee before allowing Martinez's single to shallow right field.
Wood allowed 2 hits and 2 runs with 3 strikeouts in 5 innings in his second start of the season. He was recalled from Triple-A Iowa before Tuesday's game.
Reliever Wesley Wright pitched 1 hitless innings for Houston after Happ left before he was replaced by Wilton Lopez.
Lopez got into a jam in the eighth after allowing a single to Reed Johnson with one out. Johnson was replaced by pinch runner Tony Campana, who went from first to third on an error by Lopez on a pickoff attempt.
The throw to third base arrived in time, but Downs had to leave the bag and go low to catch it, allowing Campana to dive over him Superman-style and crawl back to the base safely.
Campana's teammates were impressed with the play.
"That was unbelievable," Soriano said. "That (dive) that he made, that gave us the opportunity to tie the game, but we came up short."
Lopez ended the threat by striking out Castro and Soriano.
The Cubs placed catcher Welington Castillo on the 15-day disabled list with a sprained right knee to make room on the roster for Wood.
•Cubs manager Dale Sveum said he will miss Wednesday's game to attend his son's high school graduation in Arizona. Bench coach Jamie Quirk will fill in while he's gone.