Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MySQL support (create table) #55

Open
34 of 71 tasks
Tracked by #7
nene opened this issue Jan 11, 2024 · 0 comments
Open
34 of 71 tasks
Tracked by #7

MySQL support (create table) #55

nene opened this issue Jan 11, 2024 · 0 comments

Comments

@nene
Copy link
Owner

nene commented Jan 11, 2024

  • CREATE TABLE
    • TEMPORARY
    • IF NOT EXISTS
    • column constraints:
      • NULL | NOT NULL
      • DEFAULT { literal | (expr) }
      • VISIBLE | INVISIBLE
      • AUTO_INCREMENT
      • UNIQUE [KEY]
      • [PRIMARY] KEY
      • COMMENT 'string'
      • COLLATE collation_name
      • COLUMN_FORMAT {FIXED | DYNAMIC | DEFAULT}
      • [SECONDARY_]ENGINE_ATTRIBUTE [=] 'string'
      • STORAGE {DISK | MEMORY}
      • references_def
      • CHECK (expr) [[NOT] ENFORCED]
      • [GENERATED ALWAYS] AS (expr)
      • GENERATED ALWAYS ... {VIRTUAL | STORED}
    • table constraints:
      • {INDEX | KEY} [index_name] [index_type] (key_part,...) [index_option]...
      • {FULLTEXT | SPATIAL} [INDEX | KEY] [index_name] (key_part,...) [index_option] ...
      • PRIMARY KEY [index_type] (key_part,...) [index_option]...
      • UNIQUE [INDEX | KEY] [index_name] [index_type] (key_part,...) [index_option]...
      • FOREIGN KEY [index_name] (col_name, ...) references_def
      • CHECK (expr) [[NOT] ENFORCED]
      • index_type: USING {BTREE | HASH}
      • index_option:
        • KEY_BLOCK_SIZE [=] value
        • index_type
        • WITH PARSER parser_name
        • COMMENT 'string'
        • VISIBLE | INVISIBLE
        • [SECONDARY_]ENGINE_ATTRIBUTE [=] 'string'
      • key_part: {col_name [(length)] | (expr)} [ASC | DESC]
    • references definition:
      • REFERENCES tbl_name (key_part,...)
      • ... [MATCH FULL | MATCH PARTIAL | MATCH SIMPLE]
      • ... [ON DELETE reference_option]
      • ... [ON UPDATE reference_option]
      • reference_option: RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT
    • table options:
      • optional = sign
      • optional commas
      • all possible options in form of name [=] value
      • START TRANSACTION
      • TABLESPACE tablespace_name [STORAGE DISK]
      • [TABLESPACE tablespace_name] STORAGE MEMORY
      • UNION [=] (tbl_name[,tbl_name]...)
    • partition options:
      • PARTITION BY [LINEAR] HASH(expr)
      • PARTITION BY [LINEAR] KEY [ALGORITHM={1 | 2}] (column_list)
      • PARTITION BY RANGE{(expr) | COLUMNS(column_list)}
      • PARTITION BY LIST{(expr) | COLUMNS(column_list)}
      • PARTITIONS num
      • SUBPARTITION BY [LINEAR] HASH(expr)
      • SUBPARTITION BY [LINEAR] KEY [ALGORITHM={1 | 2}] (column_list)
      • SUBPARTITION BY ... [SUBPARTITIONS num]
      • PARTITION definition:
        • partition_name
        • VALUES LESS THAN {(expr | value_list) | MAXVALUE}
        • VALUES IN (value_list)
        • options: [STORAGE] ENGINE, COMMENT, DATA DIRECTORY, INDEX DIRECTORY, MAX_ROWS, MIN_ROWS, TABLESPACE.
        • SUBPARTITION definition:
          • logical_name
          • options: (same as PARTITION options)
    • IGNORE | REPLACE
    • AS query
    • [AS] query (no AS keyword necessary!)
    • LIKE old_table_name
    • ( LIKE old_table_name )
@nene nene mentioned this issue Jan 11, 2024
8 tasks
@nene nene changed the title MySQL support (create/alter/drop table) MySQL support (create table) Jan 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant