Wydajność nie jest tak naprawdę głównym problemem, przynajmniej nie dla mnie. Problem dotyczy raczej kluczy zastępczych i kluczy naturalnych.
Kody krajów nie są statyczne. Mogą i się zmieniają. Kraje zmieniają nazwy (np. Etiopia na Erytreę). Powstają (np. rozpad Jugosławii czy Związku Sowieckiego) i przestają istnieć (np. Niemcy Zachodnie i Wschodnie). Kiedy tak się dzieje, zmienia się kod normy ISO.
Więcej w Zmiany nazw od 1990 r.:Kraje, miasta i nie tylko
Klucze zastępcze wydają się być lepsze, ponieważ kiedy takie zdarzenia się zdarzają, klucze się nie zmieniają, zmieniają się tylko kolumny w tabeli referencyjnej.
Z tego powodu byłbym bardziej skłonny tworzyć tabele krajów i walut z kluczem podstawowym int.
Biorąc to pod uwagę, pola kluczowe varchar będą zajmowały więcej miejsca i mają pewne wady wydajności, które prawdopodobnie nie będą stanowić problemu, chyba że wykonujesz ogromną liczbę zapytań.
Aby uzyskać kompletność, możesz zapoznać się z Błędy tworzenia bazy danych popełniane przez programistów aplikacji .