content_image/778761.jpg
<img src='content_image/778761.jpg'>

One of the bytes in the sequence encodes lettercase. For example: LATIN CAPITAL LETTER A WITH GRAVE  is encoded as @0G , whereas LATIN SMALL LETTER A WITH GRAVE  is encoded as @0g . Here the third byte ( G  or g ) indicates lettercase. (On a case-insensitive file system, both letters are treated as the same.) 

For some blocks, such as Cyrillic, the second byte determines lettercase. For other blocks, such as Latin1 Supplement, the third byte determines lettercase. If two bytes in the sequence are letters (as in Greek Extended), the leftmost letter character stands for lettercase. All other letter bytes must be in lowercase. 

•All nonletter characters except underscore ( _ ), as well as letters from alphabets that do not have uppercase/lowercase mapping (such as Hebrew) are encoded using hexadecimal representation using lowercase letters for hexadecimal digits a..f : 

0x003F -> @003f 0xFFFF -> @ffff 

The hexadecimal values correspond to character values in the ucs2  double-byte character set. 

On Windows, some names such as nul , prn , and aux  are encoded by appending @@@  to the name when the server creates the corresponding file or directory. This occurs on all platforms for portability of the corresponding database object between platforms. 

## 9.2.5 Function Name Parsing and Resolution 

MySQL supports built-in (native) functions, loadable functions, and stored functions. This section describes how the server recognizes whether the name of a built-in function is used as a function call or as an identifier, and how the server determines which function to use in cases when functions of different types exist with a given name. 

## Built-In Function Name Parsing 

•Built-In Function Name Parsing 

•Function Name Resolution 

The parser uses default rules for parsing names of built-in functions. These rules can be changed by enabling the IGNORE_SPACE  SQL mode. 

When the parser encounters a word that is the name of a built-in function, it must determine whether the name signifies a function call or is instead a nonexpression reference to an identifier such as a table or column name. For example, in the following statements, the first reference to count  is a function call, whereas the second reference is a table name: 

SELECT COUNT(*) FROM mytable; 

