본문 바로가기

개발

잘되던 쿼리 heroku 에서만 에러 날때

반응형

개발은 mySql 로 하고 heroku 에 올리려니 postgreSQL 를 사용하라 해서 사용했다.

그러니 멀쩡하게 돌아가던 코드가 heroku 에 올라가니 에러가 발생했다...

 

select user.id, user.last_name, a, b, c 
from
join 
where endDate <= 20200101 AND startDate >= 20201231

에러 1

django.db.utils.ProgrammingError: 오류: 구문 오류, "." 부근

LINE 1: select user.id, user.last_name , result.rank, result.total_u...

 

아무리 봐도 user.id 라는 구문이 이상하지는 않아 보이는데 에러가 발생한다.

찾아보니 postgreSQL 에서 user 가 예약어라서 테이블로 쓸려면 "user" 로 써야한다...

에러 2

django.db.utils.ProgrammingError: 오류: "enddate" 이름의 칼럼은 없습니다

LINE 12: WHERE endDate <= 20210221 AND st...

 

endDate 라는 칼럼이 없단다..

분명히 있다.

 

이것도 찾아보니 postgreSQL 의 쿼리에서 칼럼명은 무조건 소문자로 인식한다.

 

EndDate -> enddate / endDATE -> enddate

대소문자 컬럼명을 사용할려면 "endDate" 로 사용해야한다.

select "user".id, "user".last_name, a, b, c 
from
join 
where "endDate" <= 20200101 AND "startDate" >= 20201231

후..

반응형

'개발' 카테고리의 다른 글

Clean Agile - Chapter 5  (0) 2021.01.28
Clean Agile - Chapter 4  (0) 2021.01.21
Clean Agile - Chapter 3  (0) 2021.01.18
Clean Agile - Chapter 2  (0) 2021.01.14
Clean Agile - Chapter 1  (0) 2021.01.14