You are right. Even current studies show this. And governments continue to do it (i.e. Tennessee, Las Vegas, Buffalo). There may be short term benefits for employing thousands of workers but the long term benefits are negligible. I think some intangible factors may explain it - civic pride, politicians not wanting to be the person that made a team leave and politicians happily spending other people's money.