Ohio's Sen. Rob Portman on Thursday broke ranks with President Donald Trump, voting to overturn the president's declaration of a national emergency on the border.

The Senate voted 59 to 41 to reject Trump's national emergency declaration, which the president said was needed to allow him to direct federal money to build a border wall. Portman joined 12 Republicans in voting against Trump.

"Today, I will vote to support the disapproval resolution that is before us," Portman said on the Senate floor. "I support his goals...There’s no question we need border security."

But the emergency declaration circumvented Congress and set a "dangerous new precedent," said Portman, a Republican from Terrace Park.

It's an unusual move for Portman, who's sided with Trump 93 percent of the time, according to politics site FiveThirtyEight.com.

More:Sen. Rob Portman: Read his full statement on vote to reject President Trump's border emergency

The resolution had already cleared the Democratic-controlled House. The White House had been scrambling to limit the number of GOP defections in the Senate.

Portman said he supports building a border wall but a national emergency is not the way to do it. He said a future president could use a national emergency to tear down the wall.

"It doesn't mean the president can ignore Congress and substitute his own judgment for the will of the people," Portman said, pointing out he opposed Obama's executive action on immigration for the same reason.

More:Sen. Rob Portman: Read his full statement on vote to reject President Trump's border emergency

Portman proposed other sources of money for $6 billion that the president could use without declaring a national emergency.

Trump didn't seem receptive to that proposal. Soon after the Senate rebuked him on his national emergency, Trump tweeted "Veto!" then followed it up with: "I look forward to VETOING the just passed Democrat inspired Resolution OPEN BORDERS while increasing Crime, Drugs, and Trafficking in our Country. I thank all of the Strong Republicans who voted to support Border Security and our desperately needed WALL!"

Portman acknowledged that the national emergency will likely stand after the president vetoes the Senate's action. Enough Republicans won't break rank to override the veto, he said.

"His veto will be sustained," Portman said. "I know that. But I continue to hope the president uses the funds he has available to him without creating a bad precedent."

The rest of the Greater Cincinnati and Northern Kentucky delegation had previously declared how they would vote.

Sen. Sherrod Brown, D-Ohio

Ohio Sen. Sherrod Brown, a Democrat from Cleveland, voted to terminate the national emergency.

“The President’s decision to go around Congress and take funding away from our military to support his vanity project is reckless and irresponsible,” said Brown.

Sen. Rand Paul, R-Ky.

Paul also broke ranks and voted to terminate the national emergency. In an interview last week with The Enquirer, Paul also expressed concern about the precedent.

"If the next president is Bernie Sanders, and he says climate change is an emergency, we could have soldiers building solar panels," Paul said as he talked to the media during a stop in Northern Kentucky Friday.

Sen. Mitch McConnell, R-Ky.

Senate Majority Leader Mitch McConnell voted to uphold the national emergency.

"There is a clear border security and humanitarian crisis on the southern border of the United States of America," he said.

USA TODAY contributed