Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Nie można utworzyć tabeli w mysql -Błąd 1064

MySQL 8.0.2 dodał wsparcie dla okna rank funkcja, dzięki czemu jest słowo zastrzeżone .

Możesz uciec za pomocą backticków (`):

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

Lepszym pomysłem może być jednak użycie nazwy, która nie jest słowem zastrzeżonym, na przykład rosterRank zamiast 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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Unikanie pojedynczego cudzysłowu w PHP podczas wstawiania do MySQL

  2. Jak rozwiązać błąd wywołania niezdefiniowanej funkcji dbase_open() w systemie Windows

  3. Przechowywanie adresów IPv6 w MySQL

  4. DateTimeField otrzymał naiwną datę i godzinę

  5. Pobierz wszystkie obiekty bez pętli w OOP MySQLi