Just read back the column names when you open the db. I'm not sure, but columns created with quotes become case sensitive.

@skywalk thank you for your answer, but I do not see how this could solve my problem...

To clarify the problem see the following use case:

1. my App has sort of a template engine implemented2. the customer configures a SQL-Statement (e.g. SELECT * FROM contacts)3. and the fields he wants to display (e.g. FIRSTNAME, LASTNAME, BIRTHDATE, ...)

The problem now is that he must - because DatabaseColumnIndex() is case SENSITIVE - write the field names in the exact way they were created in the (Sqlite-)database.

Since the SQL Query is case INSENSITIVE (e.g. SELECT FirstName, LASTNAME, birthDATE FROM CONtacts) it is not very clear why the retrieval of the field values should be case SENSITIVE... And the customer normally does not now

Hope this helps

Best regards

_________________As you walk on by, Will you call my name? Or will you walk away?

Ok, I can confirm the behavior. DatabaseColumnIndex() returns the case sensitive column position in a result set.Not the underlying table.This is most likely a wrapper for Column names in a result set. You could use that function directly and see if it operates differently? Or create a list of all possible column names from the db and maintain their case.

_________________The nice thing about standards is there are so many to choose from. ~ Andrew Tanenbaum