sql >> Databáze >  >> Database Tools >> phpMyAdmin

MySQL Workbench a phpMyAdmin

Problémem je zde rozdíl v syntaxi mezi různými verzemi serveru MySQL. Zdá se, že verze vašeho pracovního stolu MySQL je 8.0 a výše. Kód, který automaticky generuje, je použitelný pro server MySQL verze 8.0 .

Buď budete muset upgradovat svůj MySQL server verze na 8.0 a vyšší. Nebo můžete odstranit VISIBLE klíčové slovo ze všech míst (kde je definován index), jako níže:

INDEX `fk_TeamStatistik_Team_idx` (`Team_id` ASC) VISIBLE, -- <-- remove VISIBLE

do

INDEX `fk_TeamStatistik_Team_idx` (`Team_id` ASC),

Totéž budete muset udělat i v jiných částech vašich dotazů.

Další podrobnosti

Z Dokumenty MySQL Server 8.0 , syntaxe pro CREATE INDEX je:

CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_name
    [index_type]
    ON tbl_name (key_part,...)
    [index_option]
    [algorithm_option | lock_option] ...

key_part: {col_name [(length)] | (expr)} [ASC | DESC]

index_option:
    KEY_BLOCK_SIZE [=] value
  | index_type
  | WITH PARSER parser_name
  | COMMENT 'string'
  | {VISIBLE | INVISIBLE}  -- Notice the option of VISIBLE / INVISIBLE

index_type:
  USING {BTREE | HASH}

Nicméně tato možnost {VISIBLE | INVISIBLE} není k dispozici v MySQL Server 5.5 (verze vašeho serveru ). Z Dokumenty :

CREATE [UNIQUE | FULLTEXT | SPATIAL] INDEX index_name
    [index_type]
    ON tbl_name (key_part,...)
    [index_option]
    [algorithm_option | lock_option] ...

key_part:
    col_name [(length)] [ASC | DESC]

index_option:
    KEY_BLOCK_SIZE [=] value
  | index_type
  | WITH PARSER parser_name
  | COMMENT 'string'

index_type:
    USING {BTREE | HASH}


  1. IntelliSense nefunguje v SQL Server Management Studio

  2. Jak najdu {min,max} opakování se vzory regulárních výrazů ve Visual Studiu nebo SSMS Najít a nahradit?

  3. Vkládejte data UTF8 pohodlně do MySQL

  4. Výchozí datum a čas MySQL prostřednictvím phpmyadmin