'ñ'や'ö'など、純粋なASCIIでは表現できない文字を含むデータをサーバーに送信する場合は常に必要です。
MySQLインスタンスがクライアント接続からデフォルトでUTF-8エンコーディングを期待するように構成されていない場合(多くは場所とプラットフォームによって異なります)
http://www.joelonsoftware.com/articles/Unicode.html を読む Unicodeがどのように機能するかわからない場合に備えて。
「SETNAMES」を使用するかどうか を読む SET NAMESの代替案と、それが正確に何であるかを確認します。