X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSQL%2FTranslator%2FParser%2FMySQL.pm;h=5383f74e2deb1364c8b39313806acce6fc32d5fc;hb=ba506e52c480afe33dfec6b38a12759fad1e7fa2;hp=f5605297e8d820457f990dc1dd837f54967c2ff5;hpb=8b075c9fbc504675f70d50117b5185170725bec8;p=dbsrgits%2FSQL-Translator.git diff --git a/lib/SQL/Translator/Parser/MySQL.pm b/lib/SQL/Translator/Parser/MySQL.pm index f560529..5383f74 100644 --- a/lib/SQL/Translator/Parser/MySQL.pm +++ b/lib/SQL/Translator/Parser/MySQL.pm @@ -147,7 +147,7 @@ More information about the MySQL comment-syntax: L 'index', type => 'normal', - name => $item{'index_name(?)'}[0], - fields => $item[4], + name => $item[2][0], + fields => $item[5], + options => $item[3][0], } } +index_name_not_using : QUOTED_NAME + | /(\b(?!using)\w+\b)/ { $return = $1 } + +index_type : /using (btree|hash|rtree)/i { $return = uc $1 } + fulltext_index : /fulltext/i KEY(?) index_name(?) '(' name_with_opt_paren(s /,/) ')' { $return = { @@ -756,14 +756,15 @@ BACKTICK : '`' DOUBLE_QUOTE: '"' -NAME : BACKTICK /[^`]+/ BACKTICK +QUOTED_NAME : BACKTICK /[^`]+/ BACKTICK { $item[2] } | DOUBLE_QUOTE /[^"]+/ DOUBLE_QUOTE { $item[2] } - | /\w+/ - { $item[1] } -VALUE : /[-+]?\.?\d+(?:[eE]\d+)?/ +NAME: QUOTED_NAME + | /\w+/ + +VALUE : /[-+]?\.?\d+(?:[eE]\d+)?/ { $item[1] } | /'.*?'/ {