mirror of
https://github.com/apache/datafusion-sqlparser-rs.git
synced 2025-10-15 08:19:08 +00:00
feat: Add support for parsing the syntax of MySQL UNIQUE KEY. (#962)
Co-authored-by: yukunpeng <yukunpeng@zhoupudata.com> Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
This commit is contained in:
parent
bb7b05e106
commit
0480ee9886
2 changed files with 65 additions and 3 deletions
|
@ -3941,9 +3941,15 @@ impl<'a> Parser<'a> {
|
|||
match next_token.token {
|
||||
Token::Word(w) if w.keyword == Keyword::PRIMARY || w.keyword == Keyword::UNIQUE => {
|
||||
let is_primary = w.keyword == Keyword::PRIMARY;
|
||||
if is_primary {
|
||||
self.expect_keyword(Keyword::KEY)?;
|
||||
}
|
||||
|
||||
// parse optional [KEY]
|
||||
let _ = self.parse_keyword(Keyword::KEY);
|
||||
|
||||
// optional constraint name
|
||||
let name = self
|
||||
.maybe_parse(|parser| parser.parse_identifier())
|
||||
.or(name);
|
||||
|
||||
let columns = self.parse_parenthesized_column_list(Mandatory, false)?;
|
||||
Ok(Some(TableConstraint::Unique {
|
||||
name,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue