Using the same salt for every password in the database protects against an attacker using a pre-computed dictionary ("rainbow tables" are something like this) to attack your stored hash values. Using (and storing) a separate salt for each password protects against that and ALSO protects against the attacker building a dictionary of common passwords with a certain salt and then using that dictionary to crack ALL the passwords in the database at once.
So one-salt-per-user is clearly better, but one-salt-for-all is still better than no-salt-at-all.
So one-salt-per-user is clearly better, but one-salt-for-all is still better than no-salt-at-all.