Skip to content

Commit

Permalink
review feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
derickl committed Dec 10, 2021
1 parent d7caa1e commit 315edc4
Show file tree
Hide file tree
Showing 3 changed files with 137 additions and 9 deletions.
2 changes: 1 addition & 1 deletion src/sqlfluff/dialects/dialect_postgres.py
Expand Up @@ -1650,7 +1650,7 @@ class AlterDatabaseStatementSegment(BaseSegment):
Ref("DatabaseReferenceSegment"),
OneOf(
Sequence(
Sequence("WITH", optional=True),
Ref.keyword("WITH", optional=True),
AnyNumberOf(
Sequence("ALLOW_CONNECTIONS", Ref("BooleanLiteralGrammar")),
Sequence(
Expand Down
25 changes: 22 additions & 3 deletions test/fixtures/dialects/postgres/postgres_create_database.sql
Expand Up @@ -2,17 +2,22 @@ CREATE DATABASE db;
CREATE DATABASE db OWNER user_name;
CREATE DATABASE db OWNER = user_name;
CREATE DATABASE db WITH OWNER = user_name;
CREATE DATABASE db TEMPLATE template_name;
CREATE DATABASE db ENCODING = 'UTF8';
CREATE DATABASE db TEMPLATE = template_name;
CREATE DATABASE db WITH TEMPLATE = template_name;
CREATE DATABASE db ENCODING 'UTF8';
CREATE DATABASE db ENCODING = 'UTF8';
CREATE DATABASE db WITH ENCODING = 'UTF8';
CREATE DATABASE db LOCALE 'en_US.UTF-8';
CREATE DATABASE db LOCALE = 'en_US.utf8';
CREATE DATABASE db LOCALE = 'en_US.UTF-8';
CREATE DATABASE db WITH LOCALE = 'en_US.UTF-8';
CREATE DATABASE db LC_COLLATE 'en_US.UTF-8';
CREATE DATABASE db LC_CTYPE 'en_US.UTF-8';
CREATE DATABASE db LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8';
CREATE DATABASE db WITH LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8';
CREATE DATABASE db WITH LC_CTYPE 'en_US.UTF-8' LC_COLLATE 'en_US.UTF-8' ;
CREATE DATABASE db LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8';
CREATE DATABASE db WITH LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8';
CREATE DATABASE db WITH LC_CTYPE = 'en_US.UTF-8' LC_COLLATE = 'en_US.UTF-8';
CREATE DATABASE db TABLESPACE DEFAULT;
CREATE DATABASE db TABLESPACE = DEFAULT;
CREATE DATABASE db TABLESPACE new_tablespace;
Expand All @@ -26,3 +31,17 @@ CREATE DATABASE db IS_TEMPLATE true;
CREATE DATABASE db IS_TEMPLATE = true;
CREATE DATABASE db IS_TEMPLATE = true CONNECTION LIMIT 10 ALLOW_CONNECTIONS = true;
CREATE DATABASE db WITH IS_TEMPLATE = true CONNECTION LIMIT 10 ALLOW_CONNECTIONS = true;
CREATE DATABASE db
WITH IS_TEMPLATE = true
CONNECTION LIMIT 10
ALLOW_CONNECTIONS = true
TEMPLATE = template_name
ENCODING = 'UTF8'
OWNER user_name;
CREATE DATABASE db
IS_TEMPLATE = true
CONNECTION LIMIT 10
ALLOW_CONNECTIONS = true
TEMPLATE = template_name
ENCODING = 'UTF8'
OWNER user_name;
119 changes: 114 additions & 5 deletions test/fixtures/dialects/postgres/postgres_create_database.yml
Expand Up @@ -3,7 +3,7 @@
# computed by SQLFluff when running the tests. Please run
# `python test/generate_parse_fixture_yml.py` to generate them after adding or
# altering SQL files.
_hash: 0c935f7ad3331ceeb5b3190c0c23b1dbbe031fcd2247f4226b0359cd84787023
_hash: cee33113a9318a950765a825469af592819b5db32373765e59447bc7bba157e8
file:
- statement:
create_database_statement:
Expand Down Expand Up @@ -51,9 +51,9 @@ file:
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: TEMPLATE
- object_reference:
identifier: template_name
- keyword: ENCODING
- comparison_operator: '='
- literal: "'UTF8'"
- statement_terminator: ;
- statement:
create_database_statement:
Expand Down Expand Up @@ -93,6 +93,7 @@ file:
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: WITH
- keyword: ENCODING
- comparison_operator: '='
- literal: "'UTF8'"
Expand All @@ -114,7 +115,36 @@ file:
identifier: db
- keyword: LOCALE
- comparison_operator: '='
- literal: "'en_US.utf8'"
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: WITH
- keyword: LOCALE
- comparison_operator: '='
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: LC_COLLATE
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: LC_CTYPE
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
Expand All @@ -139,6 +169,18 @@ file:
- keyword: LC_CTYPE
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: WITH
- keyword: LC_CTYPE
- literal: "'en_US.UTF-8'"
- keyword: LC_COLLATE
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
Expand Down Expand Up @@ -166,6 +208,20 @@ file:
- comparison_operator: '='
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: WITH
- keyword: LC_CTYPE
- comparison_operator: '='
- literal: "'en_US.UTF-8'"
- keyword: LC_COLLATE
- comparison_operator: '='
- literal: "'en_US.UTF-8'"
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
Expand Down Expand Up @@ -307,3 +363,56 @@ file:
- comparison_operator: '='
- literal: 'true'
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: WITH
- keyword: IS_TEMPLATE
- comparison_operator: '='
- literal: 'true'
- keyword: CONNECTION
- keyword: LIMIT
- literal: '10'
- keyword: ALLOW_CONNECTIONS
- comparison_operator: '='
- literal: 'true'
- keyword: TEMPLATE
- comparison_operator: '='
- object_reference:
identifier: template_name
- keyword: ENCODING
- comparison_operator: '='
- literal: "'UTF8'"
- keyword: OWNER
- object_reference:
identifier: user_name
- statement_terminator: ;
- statement:
create_database_statement:
- keyword: CREATE
- keyword: DATABASE
- database_reference:
identifier: db
- keyword: IS_TEMPLATE
- comparison_operator: '='
- literal: 'true'
- keyword: CONNECTION
- keyword: LIMIT
- literal: '10'
- keyword: ALLOW_CONNECTIONS
- comparison_operator: '='
- literal: 'true'
- keyword: TEMPLATE
- comparison_operator: '='
- object_reference:
identifier: template_name
- keyword: ENCODING
- comparison_operator: '='
- literal: "'UTF8'"
- keyword: OWNER
- object_reference:
identifier: user_name
- statement_terminator: ;

0 comments on commit 315edc4

Please sign in to comment.