Case-sensitivity check enforced when retrieving data

If it doesn't relate to Debian, but you still want to share it, please do it here

Case-sensitivity check enforced when retrieving data

Postby zed02 » 2018-08-26 07:45

I have deployed a dotnet core console application (.Net core 2.0) on linux subsystem (Ubuntu 18.04) running under windows 10. Since the app had to communicate with a mySql server, I also installed a mysql connector for .net (libmysql6.4-cil) on linux. The issue is that retreiving a field requires me to provide exactly the same column name as that in the database. i.e. A case-sensitive check is being enforced here.

This same app works fine on windows environment. i.e. no case-sensitivity related issue is encountered. Though here I am using mysql-connector-net-6.9.7 with MySql 5.6.

It seems like the problem is with libmysql6.4-cil. Any advice on that?
zed02
 
Posts: 1
Joined: 2018-08-26 07:38

Re: Case-sensitivity check enforced when retrieving data

Postby arzgi » 2018-08-26 09:14

zed02 wrote:I have deployed a dotnet core console application (.Net core 2.0) on linux subsystem (Ubuntu 18.04) running under windows 10. Since the app had to communicate with a mySql server, I also installed a mysql connector for .net (libmysql6.4-cil) on linux. The issue is that retreiving a field requires me to provide exactly the same column name as that in the database. i.e. A case-sensitive check is being enforced here.

This same app works fine on windows environment. i.e. no case-sensitivity related issue is encountered. Though here I am using mysql-connector-net-6.9.7 with MySql 5.6.

It seems like the problem is with libmysql6.4-cil. Any advice on that?


Ubuntu IS NOT Debian.
arzgi
 
Posts: 389
Joined: 2008-02-21 17:03
Location: Finland

Re: Case-sensitivity check enforced when retrieving data

Postby wizard10000 » 2018-08-26 09:50

Windows is not case-sensitive, Linux is.

A case-sensitive check is being enforced here.


Not exactly. There's no check happening in Linux; one character, one ASCII code. Microsoft decided a whole bunch of years ago that it wanted to be case-insensitive. For example, if you wanted to use the letter Q Linux expects ASCII 81 for a capital Q and ASCII 113 for a lowercase q. Windows interprets either 81 or 113 as a Q and doesn't care which one you use.

When you convert an ASCII code to binary (remembering computers only do zeroes and ones):

Q = 1010001

q = 1110001

As you can see the difference between uppercase and lowercase is one flipped bit. Windows will accept either and translates internally, *nix doesn't.
we see things not as they are, but as we are.
-- anais nin
User avatar
wizard10000
 
Posts: 1295
Joined: 2011-05-09 20:02
Location: everywhere i go, there i am!


Return to Offtopic

Who is online

Users browsing this forum: No registered users and 5 guests

fashionable