Проблема, вероятно, здесь:
string sql = "select * from test111 WHERE firmadat ='" + prijmeniComboBox.Text + "'; ";
Здесь вы берете строку Unicode и объединяете ее в строку SQL, которая не является строкой Unicode. Я бы сказал вам, как заставить его работать так, как вы хотели, но это действительно очень опасный способ написания SQL . Кто-то из производителей детских игрушек VTech написал SQL * таким образом и позволил хакеру загрузить миллионы изображений детей, снятых устройствами vtech. Если бы один из моих разработчиков написал SQL, как это, они были бы подвергнуты дисциплинарному взысканию, возможно, были уволены.
Я настоятельно рекомендую использовать параметризованные SQL; любое количество целых rnet ресурсов покажет вам, как, например, http://bobby-tables.com - это также решит проблему отсутствия результатов при поиске с использованием поискового термина, содержащего не-ASCII-символы
Взгляните на http://dapper-tutorial.net; использование dapper не только позаботится о параметризации для вас, но и облегчит жизнь вашей базе данных, сократив код до пары строк, например:
using(SqlCommand x = new SqlCommand(conn)
{
var p = x.Query(
"select * from test111 WHERE firmadat = @a",
new { a = prijmeniComboBox.Text }
);
firstNameTextBox.Text = p.FirstName; //or what the column is called on db
...
}
Вы просто пишете sql, используйте заполнители @namedParameter и предоставьте анонимный объект со свойствами, названными в честь заполнителей. Даппер делает все остальное. Если у вас есть класс Person в вашем проекте, вы даже можете заставить его создавать и заполнять его