Casing Considerations for Dataset Names¶
Okera functionally ignores case for dataset (table) name lookups and performs lookups in a case-insensitive manner. For example, if you query user_Table_1
when the Okera crawler found user_TABLE_1
, Okera now generates a query against user_TABLE_1
rather than returning a "no object" response.
Warning
If you have multiple objects with the same name but distinguished by different casing, Okera provides no means to differentiate between them. For example, if TABLE_1
and table_1
are defined in the same database, a query against table_1
, tABLE_1
, TABLE_1
, or any other permutation maps to either TABLE_1
or table_1
but which table it maps to is a function of the original database scan and cannot be controlled. Further note that Okera may generate queries with quoted identifiers, so an input query that does not specify casing may generate a more specific query. For example, if Okera has table_1
defined (unquoted) and is presented with a query that reads select id from TabLe_1
, Okera may generate and issue the more specific query: select "id" from "table_1"
.