The catch-and-release program currently run for Mexicans by the U.S. government is damn silly. So what will work? If you want to stop Mexicans from crossing the border to work here, put Americans who hire them in jail. Since the Americans who hire them are also often (not always) large donors to the Republican Party, you will have to take that up with them.
This raised the question of why Democrats have been so lax on illegal employers. My guess is that this is largely intertia from the days when employers of illegal workers were largely Democrats.