Support IF NOT EXISTS for CREATE SCHEMA (#276)

This is a Postgres-specific clause: https://www.postgresql.org/docs/12/sql-createschema.html

Also add a test for `DROP SCHEMA IF EXISTS schema_name`, which is already supported in the parser.
This commit is contained in:
Alex Dukhno 2020-10-02 17:35:20 +03:00 committed by GitHub
parent 926b03a31d
commit 1ac208307c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 46 additions and 4 deletions

View file

@ -1078,8 +1078,12 @@ impl<'a> Parser<'a> {
}
pub fn parse_create_schema(&mut self) -> Result<Statement, ParserError> {
let if_not_exists = self.parse_keywords(&[Keyword::IF, Keyword::NOT, Keyword::EXISTS]);
let schema_name = self.parse_object_name()?;
Ok(Statement::CreateSchema { schema_name })
Ok(Statement::CreateSchema {
schema_name,
if_not_exists,
})
}
pub fn parse_create_external_table(