mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
1.fix KEY using btree not fit mysql 5.5 syntax,2.fix ALTER TABLE COLLATE bug,3.modify parse error info,like mysql
This commit is contained in:
+12
-5
@@ -609,11 +609,11 @@ public class MySqlCreateTableParser extends SQLCreateTableParser {
|
||||
MySqlKey key = new MySqlKey();
|
||||
key.setHasConstaint(hasConstaint);
|
||||
|
||||
if (identifierEquals("USING")) {
|
||||
lexer.nextToken();
|
||||
key.setIndexType(lexer.stringVal());
|
||||
lexer.nextToken();
|
||||
}
|
||||
// if (identifierEquals("USING")) {
|
||||
// lexer.nextToken();
|
||||
// key.setIndexType(lexer.stringVal());
|
||||
// lexer.nextToken();
|
||||
// }
|
||||
|
||||
if (lexer.token() == Token.IDENTIFIER) {
|
||||
SQLName indexName = this.exprParser.name();
|
||||
@@ -621,6 +621,13 @@ public class MySqlCreateTableParser extends SQLCreateTableParser {
|
||||
key.setIndexName(indexName);
|
||||
}
|
||||
}
|
||||
|
||||
//5.5语法 USING BTREE 放在index 名字后
|
||||
if (identifierEquals("USING")) {
|
||||
lexer.nextToken();
|
||||
key.setIndexType(lexer.stringVal());
|
||||
lexer.nextToken();
|
||||
}
|
||||
|
||||
accept(Token.LPAREN);
|
||||
for (;;) {
|
||||
|
||||
@@ -388,12 +388,11 @@ public class MySqlOutputVisitor extends SQLASTOutputVisitor implements MySqlASTV
|
||||
print(" COLLATE ");
|
||||
print(x.getCollate());
|
||||
}
|
||||
}
|
||||
|
||||
if (x.getCollate() != null) {
|
||||
}else if (x.getCollate() != null) {
|
||||
print(" COLLATE ");
|
||||
print(x.getCollate());
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user