Case sensitivity

In Informix®, database object names like table and column names are not case sensitive:

CREATE TABLE Customer ( Custno INTEGER, ... )
SELECT CustNo FROM cuSTomer ...

In Microsoft™ SQL Server, database object names and character data are case-insensitive by default:

CREATE TABLE Customer ( Custno INTEGER, CustName CHAR(20) )
INSERT INTO CUSTOMER VALUES ( 1, 'TECHNOSOFT' )
SELECT CustNo FROM cuSTomer WHERE custname = 'techNOSoft'

The installation program of SQL Server allows you to customize the sort order. The sort order specifies the rules used by SQL Server to collate, compare, and present character data. It also specifies whether SQL Server is case-sensitive.

Genero compilers convert table and column names to lower case. For example, when writing following static SQL statement:

SELECT COUNT(*) FROM CUSTOMER WHERE CUSTNAME LIKE 'S%'

The SQL text stored in the pcode module will be:

SELECT COUNT(*) FROM customer WHERE custname LIKE 'S%'

Solution

Select the case-sensitive sort order when installing SQL Server to make queries case-sensitive.

Define the database tables and columns in lower case only, because Genero compilers convert them to lower case.

See also Name resolution of SQL objects.