Legally, you don't have to. All EU banks are equal and nobody is allowed to force you to open an account in a particular country.
Does it even have to be an EU bank? I imagine a foreign citizen from US/UK or somewhere else can purchase in spain without opening an account there