Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como faço para escapar palavras reservadas usadas como nomes de coluna? MySQL/Criar Tabela


Você pode usar aspas duplas se modo ANSI SQL está ativado
CREATE TABLE IF NOT EXISTS misc_info
  (
     id    INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
     "key" TEXT UNIQUE NOT NULL,
     value TEXT NOT NULL
  )
ENGINE=INNODB; 

ou o back tick proprietário escapando de outra forma. (Onde encontrar o ` caractere em vários layouts de teclado é abordado esta resposta )
CREATE TABLE IF NOT EXISTS misc_info
  (
     id    INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
     `key` TEXT UNIQUE NOT NULL,
     value TEXT NOT NULL
  )
ENGINE=INNODB; 

(Fonte:Manual de referência do MySQL, 9.3 Palavras reservadas )