2015-01-12 3 views
0

Помимо стиля этих нескольких строк, которые я буду сортировать позже, почему эта проверка нечувствительна к регистру?SQL query resultset не чувствителен к регистру

conn.Open(); 
string checkUser = "Select count(*) from Tb_Registration Where Username= '" + txtUser.Text + "'"; 
SqlCommand com = new SqlCommand(checkUser, conn); 
int temp = Convert.ToInt32(com.ExecuteScalar().ToString().Trim()); 
conn.Close(); 

В БД у меня есть «user1» в varchar колонке, но до сих пор значение температуры составляет 1, если я проверю «USER1» или «user1» .Если я проверяю для «пользователь» это 0.

+3

По-видимому, вы можете использовать 'COLLATE' для повышения чувствительности; – DonBoitnott

+0

У вас есть запись с именем пользователя 'user'? Чувствительность поиска случаев зависит от сортировки столбца, который вы ищете. –

+0

@DonBoitnott Спасибо, что решила проблему. – FeliceM

ответ

0

Проверьте свою сортировку. Любая двоичная сортировка БУДЕТ чувствительной к регистру. Латинский генерал Бин является примером. Вы всегда можете вызвать ToLower() или ToUpper(), если вам нужно совместить регистр.

Смежные вопросы