Wainwright (11-5) broke a personal two-start losing streak with the 112-pitch gem. The right-hander yielded one run, walked two and struck out eight in dominating the Athletics.
Adams' three-run shot in the sixth inning doubled the Cards' lead to 6-0 and he added a solo shot in the eighth to cap the scoring.
Matt Carpenter, Matt Holliday and David Descalso each drove in a run for St. Louis, which came into the game trailing National League Central-leading Pittsburgh by one game.
Jesse Chavez (1-2) was tagged with the loss after A's starter Jarrod Parker exited with a hamstring injury following 3 2/3 scoreless frames.
Josh Reddick drove in the only run for Oakland, which began the day a half-game behind Texas in the American League West.