mirror of
https://github.com/apache/datafusion-sqlparser-rs.git
synced 2025-09-01 03:37:21 +00:00
Improve ALTER error messages for unsupported syntax
This commit is contained in:
parent
787cd9a717
commit
d65274bc31
1 changed files with 9 additions and 9 deletions
|
@ -846,20 +846,20 @@ impl Parser {
|
||||||
self.expect_keyword("TABLE")?;
|
self.expect_keyword("TABLE")?;
|
||||||
let _ = self.parse_keyword("ONLY");
|
let _ = self.parse_keyword("ONLY");
|
||||||
let table_name = self.parse_object_name()?;
|
let table_name = self.parse_object_name()?;
|
||||||
let operation: Result<AlterOperation, ParserError> =
|
let operation = if self.parse_keyword("ADD") {
|
||||||
if self.parse_keywords(vec!["ADD", "CONSTRAINT"]) {
|
if self.parse_keyword("CONSTRAINT") {
|
||||||
let constraint_name = self.parse_identifier()?;
|
let constraint_name = self.parse_identifier()?;
|
||||||
let table_key = self.parse_table_key(constraint_name)?;
|
let table_key = self.parse_table_key(constraint_name)?;
|
||||||
Ok(AlterOperation::AddConstraint(table_key))
|
AlterOperation::AddConstraint(table_key)
|
||||||
} else {
|
} else {
|
||||||
return parser_err!(format!(
|
return self.expected("CONSTRAINT after ADD", self.peek_token());
|
||||||
"Expecting ADD CONSTRAINT, found :{:?}",
|
}
|
||||||
self.peek_token()
|
} else {
|
||||||
));
|
return self.expected("ADD after ALTER TABLE", self.peek_token());
|
||||||
};
|
};
|
||||||
Ok(SQLStatement::SQLAlterTable {
|
Ok(SQLStatement::SQLAlterTable {
|
||||||
name: table_name,
|
name: table_name,
|
||||||
operation: operation?,
|
operation,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue