key
은 MySQL 예약어이기 때문에.
http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
단어 key
에 대해 다시 눈금을 사용하십시오.
우리는 데이터베이스 테이블의 필드를 작성하는 동안 MySQL은 키워드를 예약 확인해야합니다 :
$upper = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE `key`='ndz_limit_up'");
$lower = $this->db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE `key`='ndz_limit_down'");
이런 종류의 문제를 피할 수있는 최선의 선택이다.
그리고 우리는 필드로 키워드를 사용하지 않도록해야합니다.
방법이 함께 해결하기 :
1) 테이블과 필드 이름에 대해 (`) 역 따옴표 사용합니다.
2) 테이블의 경우 데이터베이스 이름 앞에 databaseName.tableName
을 붙입니다.
필드의 경우 : 앞에 테이블 이름 예 : tableName.fieldName
.
이렇게하면 MySQL은 제공된 테이블이 데이터베이스 테이블 또는 필드 이름이 아닌 MySQL 예약 키워드가 아니라는 것을 해석합니다.
감사합니다. 예약되지 않은 모든 열 이름에 다시 체크 표시를해야합니까? – devst3r
필요 없음. 그러나 그렇습니다. 우리가 더 잘한다면 더 좋습니다. – Pupil
내 답변이 도움이 되었다면 다른 커뮤니티 회원이 얻을 수 있도록 해결책으로 표시하십시오. – Pupil