9e2를 9 * 10 ^ 2 이라는 숫자로 인식을 해서 그런것이 아닐까요?
e대신 다른 문자를 써서 하면
mysql> create table 9a2 ( aa int );
Query OK, 0 rows affected (0.00 sec)
잘 되거든요.
http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#Legal_names 에 이런 말이 있더군요..
It is recommended that you do not use names like 1e, because an
expression like 1e+1 is ambiguous. It may be interpreted as the
expression 1e + 1 or as the number 1e+1.
: mysql> create table 9e ( aa int );
: Query OK, 0 rows affected (0.00 sec)
:
: mysql> create table 9e2 ( aa int );
: ERROR 1064: You have an error in your SQL syntax near '9e2 ( aa int )' at line 1
:
: SQL 표준 문법은 아래와 같은데...
:
: <identifier> ::= <simple_identifier> | <double_quotes><special_identifier><double_quotes>
: <simple_identifier> ::= <first_character>[<identifier_tail_character>...]
: <first_character> ::= <letter> | <extended_letter> | <language_specific_character>
: <letter> ::= A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
: | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o | p | q | r | s | t | u | v | w | x | y | z
: <extended_letter> ::= # | @ | $
:
: first_charater 에 <digit> 가 포함되는 것도 아니고 포함 안되는 것도 아닌것 같고?
:
: 아시는 분 답변좀.. 불행이 소스안에 lex 파일이 없어서.. 저는 잘 모르겠습니다.
:
: --
: 메롱