2013-05-31 2 views
-1

다음 SQL 코드가 오류를 표시합니다. phpMyAdmin에 나타나는 오류 메시지는내 코드에서 SQL 오류가 발생하는 이유

# 1064입니다. - SQL 구문에 오류가 있습니다. 줄에서 오른쪽 근처에서 사용하는 구문 '긴 = 위도 -6.52607 = 54.10046을 등록 ='RGE 정보 감수에 대한 귀하의 MySQL 서버 버전에 해당하는 매뉴얼 '을, 정보 ='여기에 일반적인 정보를 '확인 1

long과 lat는 phpmyadmin을 사용하여 직접 삽입 할 때 작동하지만 이제는 SQL 쿼리를 수행 할 때 작동합니다. 두 필드는 float로 설정됩니다. 피곤한 인용문을 사용하거나 사용하지 않고 피곤했습니다. 오류 메시지가 구글을 시도하는 경우

INSERT INTO events SET 
    name = 'Home Event', 
    url = 'home-event', 
    eventDate = '2013-06-29', 
    address1 = '18 Daly Park', 
    address2 = 'Silverbridge', 
    city = 'Newry', 
    county = 'Down', 
    postcode = 'BT35 9PJ', 
    long = -6.52607, 
    lat = 54.10046, 
    reg = 'Rge info ere', 
    info = 'general info here', 
    contact = 'contact me', 
    image = '' 
+1

는'Long'가 예약 된 단어입니다 long'. 백틱으로 인용해야합니다. 또는 열 이름을 다른 것으로 변경하십시오. – andrewsi

+0

하지만 phpMyAdmin 인터페이스를 사용하면 어떻게 작동합니까? –

+0

@PierceMcGeough phpMyAdmin은이 문제에 대해 알고 있고 이것들을 주위에 넣습니다. – glglgl

답변

5

LONG는 MySQL은 예약 된 키워드입니다.

당신은 이렇게 오류가 다시 반환하지 않습니다 열 이름을 변경, 그것을 작동하게하는 두 가지 선택,

하나, 역 따옴표로 열 이름을 포장,

`long` = -6.52607 

또는 두 가지가 있습니다.

현재 모든 키워드의 목록을 찾을 수 있습니다 MySQL Reserved Keywords List

+0

+1 상식 – Kermit

6

당신이 예약 된 MySQL을 사용하고 있습니다를 키워드 느릅 나무는 당신이 그것이 column name

이해 수 있도록 역 따옴표와 쿼리에서 탈출해야합니다, long입니다 측면에 대한 mysql reserved keyword 내가 테이블 등을 제공하여 당신이 그들을 탈출 피할 수 있음을 추가 할 지적으로
`long` = -6.52607, 

documentation here

에서보세요 ias를 입력 한 다음 alias.과 함께 열 이름을 사용하십시오. 사실 INSERT 쿼리는 테이블 별칭을 지원하지 않으므로이 특정 상황에서는 사용할 수 없습니다.

3

오래 당신은 탈출 긴에 SQL

변화를 텍스트를 인용의 실천에 가야 키워드입니다`

`long` = -6.52607, 
관련 문제