간단한 PostgreSQL 삽입이 작동하지 않습니다.
postgres 테이블에 간단한 삽입을 시도하고 있지만 삽입하려는 값이 열 이름으로 해석된다는 오류가 발생합니다.
INSERT INTO "imageTagBusinessMainCategory"
(id, businessMainCategory)
VALUES
(DEFAULT, "auto dealer")
여기서 id는 null이 아닌 기본 키 및 자동 증가로 설정됩니다. phpPgAdmin에서 테이블을 설정할 때 선택한 상자입니다.
그래도이 오류가 발생합니다.
ERROR: ERROR: column "auto dealer" does not exist
Query = INSERT
INTO "imageTagBusinessMainCategory"
(id, businessMainCategory)
VALUES
(DEFAULT,
"auto dealer")
여기서 읽은 것처럼 테이블 이름을 큰 따옴표로 묶었습니다 .
그리고 여기서DEFAULT
읽은대로 id를 자동으로 늘려야 합니다.
어떤 아이디어? 감사!
'auto dealer'
대신 사용하십시오 . PostgreSQL "
은 식별자에 '
대한 따옴표로 문자열에 대한 따옴표로 해석 합니다.
또한:
이것이 새로운 프로젝트라면 대소 문자 혼합 테이블을 사용하지 마십시오. 나중에 좌절의 원인이됩니다. SQL 문에서 대소 문자를 사용할 수있는 대신 식별자 이름을 인용하고 대소 문자를 올바르게 가져와야합니다.
id
/ 를 지정할 필요가 없습니다DEFAULT
. 이미 수행 한 작업을 수행하도록 요청하는 것입니다. 열에 기본값을 넣으려면columnName
/ 를 포함해야하는 DBMS를 만나지DEFAULT
못했기 때문에이 추가 KV 쌍이 나중에 코드를 읽는 사람에게 무슨 일이 일어나고 있는지 더 명확하게 만들지 않을 것이라고 생각합니다. .
INSERT INTO "imageTagBusinessMainCategory"
("businessMainCategory")
VALUES
('auto dealer')
편집 : 열 이름 주위에 큰 따옴표 추가
Postgres, Oracle 등은 대소 문자가 혼합 된 경우 열 이름이 따옴표로 묶일 것으로 예상합니다. 따라서 테이블 열에 대한 모든 작은 또는 모든 대문자 규칙을 만들거나 David Faber가 제안한대로 따옴표를 사용하십시오.
INSERT INTO "imageTagBusinessMainCategory"
("businessMainCategory")
VALUES
('auto dealer')
참고 URL : https://stackoverflow.com/questions/12428496/cannot-get-simple-postgresql-insert-to-work
'Development Tip' 카테고리의 다른 글
Vim : ctag 설정이 어렵습니다. (0) | 2020.12.03 |
---|---|
null android를 반환하는 카메라 활동 (0) | 2020.12.03 |
리틀 엔디안과 빅 엔디안을 확인하는 C 프로그램 (0) | 2020.12.03 |
속성 라우팅을 사용하는 동안 쿼리 문자열이 작동하지 않음 (0) | 2020.12.03 |
Xcode에서 Info.plist를 열 수 없음 — "해당 파일이 없습니다"라는 오류 메시지 (0) | 2020.12.02 |