def __init__(self, statement):
super(CreateTableStatement, self).__init__(statement)
if (
self.token_matcher.matches(
Optional([Compound(['if', 'not', 'exists'])]),
) and
self.token_matcher.has_next()
):
self.database_name = None
if self.token_matcher.has_matches(Compound([Any(), '.', Any()])):
db = self.token_matcher.pop().value
self.token_matcher.pop()
self.database_name = MysqlQualifiedIdentifierParser(
db,
identifier_qualified=False
).parse()
self.table = MysqlQualifiedIdentifierParser(
self.token_matcher.pop().value,
identifier_qualified=False
).parse()
else:
raise IncompatibleStatementError()
评论列表
文章目录