2012-07-03 3 views
2

나는 MySQL의 이전 버전에서 마이그레이션 된이 테이블이 :마이그레이션 된 데이터베이스는 하나 개의 테이블에서 예약어를 가지고 그것을

> SHOW COLUMNS from tbl 
(output modified below for posting) 

watch_id   | int(11)  | NO | PRI | NULL 
user_id   | varchar(125) | YES | MUL | NULL 
type    | int(11)  | YES | MUL | NULL 
range    | int(10)  | YES |  | NULL 
active    | tinyint(4) | NO |  | 1 

"범위는"현재 버전의 예약어입니다

ERROR 1054 (42S22): Unknown column 'range' in 'tbl' 

어떤 아이디어에

ALTER TABLE `db`.`tbl` CHANGE COLUMN `range` `watch_range` INT(10) DEFAULT NULL; 

결과?

참고 : 나는 원래이를 게시 할 때 나는 오타는 SQL이 있습니다

`range` not `range' as I originally posted 
+0

먼저 열 이름을 이전 버전의 MySQL을 제거한 다음 마이그레이션하십시오. – stUrb

+1

'ALTER TABLE' 문에서'range'라는 단어에 닫는 따옴표는 역 따옴표가 아닙니다. 작은 따옴표입니다. 그건 오타예요? – Asaph

+0

고정되었지만 단지 오타였습니다. 스크립트에서 '범위'였습니다. – somedev

답변

1

@eggyal이

ran mysql_upgrade 
ran repair 

를 제안은

dumped the database and removed it 
imported the dump 
restarted mysql 

는 아무 생각 일하지 이유