“
The behavior of field name quoting will change in ADOdb Version 6
This global variable controls quoting and casing of field names when the autoExecute() method is used. The default behavior of autoExecute is to quote field names, and convert them to upper case.
The following behaviors are available:
Value | Description | Example |
---|---|---|
false | No quoting is done | SELECT field_name FROM table |
true | Quoting is done1), no case handling of the field name | SELECT `field_name` FROM table |
BRACKETS | Fields are wrapped in brackets2), no case handling of the field name | SELECT [field_name] FROM table |
UPPER | Quoting is done, field name is upper cased (default) | SELECT `FIELD_NAME` FROM table |
LOWER | Quoting is done, field name is lower cased | SELECT `field_name` FROM table |
NATIVE | Quoting is done, field name is as defined in the database | SELECT `Field_Name` FROM table |
While the intended behavior when using true or false is to not do any case conversion of the field names, in 5.21 they are actually converted to upper case.
This is a known issue, caused by a design problem with this setting which mixes case conversion and quoting. It will be fixed in a future release.
$ADODB_QUOTE_FIELDNAMES = 'NATIVE';