Don't fail parsing ALTER TABLE ADD COLUMN ending with a semicolon (#246)

This is a follow-up to https://github.com/ballista-compute/sqlparser-rs/pull/203
where ALTER TABLE ADD COLUMN support was initially implemented.

Fixes #233.
This commit is contained in:
mz 2020-07-31 23:10:53 +08:00 committed by GitHub
parent f8feff4ef2
commit 9c1a5a781d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 3 deletions

View file

@ -1199,7 +1199,7 @@ impl Parser {
let mut options = vec![];
loop {
match self.peek_token() {
Token::EOF | Token::Comma | Token::RParen => break,
Token::EOF | Token::Comma | Token::RParen | Token::SemiColon => break,
_ => options.push(self.parse_column_option_def()?),
}
}

View file

@ -1459,8 +1459,8 @@ fn parse_create_external_table_lowercase() {
#[test]
fn parse_alter_table() {
let add_column = "ALTER TABLE tab ADD COLUMN foo TEXT";
match verified_stmt(add_column) {
let add_column = "ALTER TABLE tab ADD COLUMN foo TEXT;";
match one_statement_parses_to(add_column, "ALTER TABLE tab ADD COLUMN foo TEXT") {
Statement::AlterTable {
name,
operation: AlterTableOperation::AddColumn { column_def },