Oh… yes, I found that it was "the problem" so I removed my post, I didn't see that someone answered, sorry.
I tried solution: user.force_encoding('US-ASCII') (and same for pass) and query works.
Then I checked what encoding have all string, and well… I wanted to make new thread but I think that I will write about it here. :)
So… I am using sqlite3-ruby in Sinatra. Strings in my app have encoding UTF-8. Database has encoding UTF-8 too. Both "PRAGMA encoding" in sqlite3 console and encoding property of Database object from sqlite3-ruby are showing that encoding is UTF-8.
So it looks a bit strange… Is sqlite3-ruby somehow converting encoding on query's way from app to database? Or what else could be a reason?
I tried to use Sequel gem in same app and with Sequel it works well. force_encoding is not good solution in my case because I just need UTF-8 (in some queries, in example above not).