Neifi Perez hit a grand slam and Larry Walker homered twice, including a two-run shot in a seven-run second inning, as the Colorado Rockies beat San Diego, 8-6, to sweep a day-night doubleheader yesterday in Denver.

The Rockies won the opener, 12-10, to snap the Padres' 14-game winning streak and end Colorado's nine-game losing skid.

Perez hit a three-run homer in the opener and had eight RBI in the doubleheader. Walker also homered in the opener, giving him three for the day and 24 for the season.

In the first game, Vinny Castilla hit a three-run homer and the Rockies built leads of 7-0 and 11-4 before hanging on for the win.

San Diego's 14-game streak was the longest in the majors since Kansas City won 14 straight in 1994. Colorado's nine-game slide was its longest since the franchise's inaugural season in 1993.

Teams have reached double digits in runs 26 times at Coors Field this season, including eight games in which both teams did it.

"Talk about a monkey on your back for two weeks," Rockies reliever Curtis Leskanic said. "Ninety-five degrees at Coors Field, you knew it was going to be a high-scoring game."

"We went down with a fight," Padres Manager Bruce Bochy said. "We got down but never quit."

PHILLIES 21, CUBS 8: In Philadelphia, Sammy Sosa hit his major league-leading 31st homer of the season, but Chicago did little else right. The Phillies' Scott Rolen hit his first career grand slam, his third homer in two games, and the Cubs yielded their highest run total since 1987.

The Cubs have allowed 54 runs in their last three games, including a 19-12 loss to the Brewers on Thursday and a 14-1 defeat to the Phillies on Friday. According to the Elias Sports Bureau, that's the most given up by a major league team in a three-game span since the St. Louis Browns allowed 56 to the Boston Red Sox in 1950.

Things got so bad yesterday that third baseman Gary Gaetti made his third career pitching appearance in the eighth inning. He allowed a homer by Marlon Anderson -- who was 5 for 6 with two RBI and four runs scored -- and an RBI triple by Doug Glanville.

"This is the worst I've been through as a manager at any level," Cubs Manager Jim Riggleman said.

BRAVES 3, METS 0: Kevin Millwood and John Rocker combined on a three-hitter and stretched Atlanta's shutout streak against host New York to 28 innings. The Braves became the first team to blank the Mets in three straight games.

GIANTS 9, DODGERS 1: Barry Bonds hit his third home run in two games and drove in three runs as visiting San Francisco won its sixth straight. Los Angeles has lost six in a row for the first time since May 1995.

CARDINALS 2, DIAMONDBACKS 1: Mark McGwire walked on four pitches with the bases loaded in the 10th inning as St. Louis beat Arizona at home. McGwire, who had two homers and five RBI Friday, took four straight high pitches from rookie Vicente Padilla.

It was a tough spot for Padilla, 21, who began the season in Class A and got his first major league out Friday night. "The harder you try to put the ball in a certain spot, the more difficult it becomes," he said.

REDS 10, ASTROS 0: Michael Tucker, Greg Vaughn and Barry Larkin doubled home runs in a six-run fifth inning that powered Cincinnati past visiting Houston.

BREWERS 9, PIRATES 4: In Pittsburgh, Jeff Cirillo went 5 for 5 and Bill Pulsipher won in his first start since April 18 for visiting Milwaukee.

MARLINS 6, EXPOS 1: In Miami, rookie Kevin Millar homered and had a career-high five RBI in the win over Montreal. Millar went 3 for 4 and has 11 RBI in his last three games.