O'Neill came through Saturday night with a two-run homer and a career high-tying four RBI as the Cardinals beat the Arizona Diamondbacks 4-2.
His two-run double in the first inning gave the Cardinals a 2-0 lead. He added the homer off Merrill Kelly (7-9) in the third to push the advantage to 4-1.
O'Neill, born in Burnaby, British Columbia, Canada, met Dobbs before the game. A resident of the St. Louis suburb of Maryland Heights, Dobbs got to speak with several players before the contest thanks to the Make-A-Wish Foundation of Missouri.
The 11-year-old Dobbs' ability to keep fighting through the toughest of circumstances impressed O'Neill.
"I was able to put that ball in the air for Preston," O'Neill said. "It was just a good feeling."
O'Neill, recalled from Triple-A Memphis on June 29, also drove in four runs in a 6-0 win over Kansas City on May 21, 2018.
Dakota Hudson pitched six effective innings to help St. Louis break a three-game losing streak.
Eduardo Escobar hit his 19th homer for Arizona, which snapped a four-game win streak.
Hudson (8-4) gave up three hits and two runs in a 94-pitch stint. He struck out five and walked four. Hudson wriggled out of a bases-loaded no-out jam in the second after giving up a run-scoring hit to Nick Ahmed.
"When you're tested in uncomfortable situations, he figures out a way to bear down and execute," St. Louis manager Mike Shildt said. "He gutted it up -- did his part."
"It was a day where I didn't have my best pitch and had to battle through it in order to get outs and keep us in position to win a good ball game," Hudson said. "It's kind of how it was -- we had to make adjustments early."
Carlos Martinez got the last four outs for his fourth save in six chances.
Kelly surrendered just one earned run over five innings. A two-out error by third baseman Jake Lamb in the first allowed the inning to continue.
"I would like things to be a little smoother than it was," Kelly said. "Sometimes that's just baseball. It was just kind of not my night."
Ahmed has reached safely in a career-best 14 successive games.
St. Louis first baseman Paul Goldschmidt, who played eight seasons in Arizona (2011-2018), reached on the error by Lamb but went 0 for 3 at the plate and is hitless in seven at bats in the series.
Goldschmidt is hitting .249, the lowest average of his career at this point in the season.
Diamondbacks: RHP Jon Duplantier was scheduled to throw in an Arizona League game on Saturday. He has been sidelined since June 12 with right shoulder inflammation.
Cardinals: RHP Adam Wainwright will start on Sunday after missing a scheduled start on Friday with back spasms.
"I could have gone (Friday), but they said don't push it," Wainwright said. "I was fine with it."
RHP Miles Mikolas (5-9, 4.53 ERA), who was slated to start Sunday, will go on Monday.
RHP Wainwright (5-7, 4.31 ERA) will face Arizona RHP Zack Greinke (10-3, 2.73) in the final of the three-game series on Sunday. Greinke won 10 games before the All-Star break for the fourth successive season. He has not allowed an earned run in three starts against NL Central opponents this season covering 20 2/3 innings.
More AP baseball coverage: www.apnews.com/MLB and www.twitter.com/AP-Sports
Ryan Zimmerman seals deal with Washington Nationals, says this might not be last year
Ryan Zimmerman said if he can "settle into this role and do well this year" with the Nationals he would consider playing past this upcoming season.
Garrett Richards' best strikeouts of 2020
Check out some of the best strikeouts from the newest member of the Red Sox, Garrett Richards.
Garrett Richards, Boston Red Sox reach 1-year, $10 million deal, sources say
Garrett Richards, who went 2-2 with a 4.03 ERA in 10 starts for the Padres in 2020, has reached a one-year, $10 million deal with the Red Sox, sources told ESPN.
Let us appreciate the grace and uncommon decency of Henry Aaron
Over the course of his 86 years, America asked Henry Aaron to do everything right. And he did. He was an unquestioned immortal of the game.
The best of Enrique Hernandez's 2020 season
Take a look back at the best of Enrique Hernandez's 2020 season with the Dodgers.
Sources: Boston Red Sox, Enrique Hernandez agree to 2-year, $14 million deal
The Red Sox agreed to a two-year, $14 million deal with Enrique Hernandez, sources confirmed to ESPN.