Mysql
 sql >> Database >  >> RDS >> Mysql

Impossibile creare la tabella in mysql -Errore 1064

MySQL 8.0.2 ha aggiunto il supporto per la finestra rank funzione, rendendolo un parola riservata .

Puoi evitarlo usando i backtick (`):

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)
);

Ma potrebbe essere un'idea migliore usare solo un nome che non sia una parola riservata, come rosterRank invece di 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)
);