A referendum for things like leaving the EU and the union or joining a different one should be a once-in-20-year type decision. It can't be endless flip-flopping.
As I said, it took a war for the US to figure this out. The problem is you can't run a country when people think they can decide to pick up their marbles and go play somewhere else every time somebody does something they don't like. Being a good citizen in a democracy sometimes means you live with decisions you don't like because you got outvoted. Twenty years is way too close together, if you're going to allow it at all.