sql >> Databáze >  >> RDS >> Mysql

Tabulku nelze vytvořit v mysql -Chyba 1064

MySQL 8.0.2 přidala podporu pro okno rank funkce, což z něj dělá vyhrazené slovo .

Mohli byste to opustit pomocí zpětných značek (`):

CREATE TABLE ofRosterGroups (
  rosterID              BIGINT          NOT NULL,
  `rank`                TINYINT         NOT NULL, -- Here
  groupName             VARCHAR(255)    NOT NULL,
  PRIMARY KEY (rosterID, `rank`), -- And here
  INDEX ofRosterGroup_rosterid_idx (rosterID)
);

Ale může být lepší použít název, který není vyhrazeným slovem, jako je rosterRank místo rank :

CREATE TABLE ofRosterGroups (
  rosterID              BIGINT          NOT NULL,
  rosterRank            TINYINT         NOT NULL, -- Here
  groupName             VARCHAR(255)    NOT NULL,
  PRIMARY KEY (rosterID, rosterRank), -- And here
  INDEX ofRosterGroup_rosterid_idx (rosterID)
);



  1. Znaky ي a ی a rozdíl v perštině - Mysql

  2. INSERT do řetězce DB DateTime

  3. SQL Server nahradit, odstranit vše po určitém znaku

  4. Vytvořte funkci s hodnotou tabulky na serveru SQL Server