diff options
Diffstat (limited to '')
-rw-r--r-- | sqlglot/tokens.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/sqlglot/tokens.py b/sqlglot/tokens.py index 3ba8195..ce255c3 100644 --- a/sqlglot/tokens.py +++ b/sqlglot/tokens.py @@ -108,6 +108,8 @@ class TokenType(AutoName): LONGTEXT = auto() MEDIUMBLOB = auto() LONGBLOB = auto() + TINYBLOB = auto() + TINYTEXT = auto() BINARY = auto() VARBINARY = auto() JSON = auto() @@ -675,6 +677,7 @@ class Tokenizer(metaclass=_Tokenizer): "BOOL": TokenType.BOOLEAN, "BOOLEAN": TokenType.BOOLEAN, "BYTE": TokenType.TINYINT, + "MEDIUMINT": TokenType.MEDIUMINT, "TINYINT": TokenType.TINYINT, "SHORT": TokenType.SMALLINT, "SMALLINT": TokenType.SMALLINT, @@ -712,10 +715,16 @@ class Tokenizer(metaclass=_Tokenizer): "STR": TokenType.TEXT, "STRING": TokenType.TEXT, "TEXT": TokenType.TEXT, + "LONGTEXT": TokenType.LONGTEXT, + "MEDIUMTEXT": TokenType.MEDIUMTEXT, + "TINYTEXT": TokenType.TINYTEXT, "CLOB": TokenType.TEXT, "LONGVARCHAR": TokenType.TEXT, "BINARY": TokenType.BINARY, "BLOB": TokenType.VARBINARY, + "LONGBLOB": TokenType.LONGBLOB, + "MEDIUMBLOB": TokenType.MEDIUMBLOB, + "TINYBLOB": TokenType.TINYBLOB, "BYTEA": TokenType.VARBINARY, "VARBINARY": TokenType.VARBINARY, "TIME": TokenType.TIME, @@ -1159,7 +1168,11 @@ class Tokenizer(metaclass=_Tokenizer): escapes = self._STRING_ESCAPES if escapes is None else escapes while True: - if self._char in escapes and (self._peek == delimiter or self._peek in escapes): + if ( + self._char in escapes + and (self._peek == delimiter or self._peek in escapes) + and (self._char not in self._QUOTES or self._char == self._peek) + ): if self._peek == delimiter: text += self._peek else: |