Det havde intet at gøre med ODP.NET-udbyderen. Problemet var, at det bibliotek, vi bruger til at skabe forbindelser til os (som selvfølgelig ikke bruges af Oracle SQL Developer, og som jeg ikke brugte, da jeg prøvede Microsoft-udbyderen) altid udførte følgende sætninger, før jeg gjorde noget:
ALTER SESSION SET NLS_COMP = LINGUISTIC
ALTER SESSION SET NLS_SORT = BINARY_CI
Disse gør Oracle-stil-ufølsomme. Men de gør også alle konventionelle indekser ubrugelige. Fordi vi forespurgte fra en visning, havde den bestilling indbygget. Og fordi vi ikke ejer databasen, kan vi ikke gøre indekserne sproglige for at løse ydeevneproblemet.
At give en måde at ikke udføre disse sætninger i dette (sjældne) scenario løste problemet.