내 데이터베이스에 100,000 개의 주소에 대한 지오 코딩 결과를 가져와야합니다. 결과는 CSV 파일에서 사용할 수 있습니다. 동료가 mySQL을 사용하여 가져 왔습니다. 그러나 PostgreSQL과 함께 작업 중이며 가져 오기가 작동하지 않습니다. 42 열로 빈 테이블을 채우려고합니다. 두 번째 열에는 지오 코딩 API의 원시 데이터가 텍스트로 포함되어 있습니다. 후속 열은 쉼표로 구분됩니다. CSV에 나타나는 방식대로 하나의 주소 (내 데이터베이스에 한 행으로 표시되어야 함)의 예를 참조하십시오. 만들려면 분명히 : 1 열은 00012 VILLANOVA DI GUIDONIA, IT, 원시 데이터 2 열, OK와 3 열, 1 4 열, 라치오, 등으로 5 열 ..이상한 텍스트 열을 사용하여 CSV 파일을 PostgreSQL 데이터베이스로 가져 오기
가득합니다00012 VILLANOVA DI GUIDONIA, IT,"{\
\"results\" : [\
{\
\"address_components\" : [\
{\
\"long_name\" : \"Villanova\",\
\"short_name\" : \"Villanova\",\
\"types\" : [ \"locality\", \"political\" ]\
},\
{\
\"long_name\" : \"Guidonia\",\
\"short_name\" : \"Guidonia\",\
\"types\" : [ \"administrative_area_level_3\", \"political\" ]\
},\
{\
\"long_name\" : \"Città Metropolitana di Roma\",\
\"short_name\" : \"RM\",\
\"types\" : [ \"administrative_area_level_2\", \"political\" ]\
},\
{\
\"long_name\" : \"Lazio\",\
\"short_name\" : \"Lazio\",\
\"types\" : [ \"administrative_area_level_1\", \"political\" ]\
},\
{\
\"long_name\" : \"Italy\",\
\"short_name\" : \"IT\",\
\"types\" : [ \"country\", \"political\" ]\
},\
{\
\"long_name\" : \"00012\",\
\"short_name\" : \"00012\",\
\"types\" : [ \"postal_code\" ]\
}\
],\
\"formatted_address\" : \"00012 Villanova RM, Italy\",\
\"geometry\" : {\
\"bounds\" : {\
\"northeast\" : {\
\"lat\" : 41.9732526,\
\"lng\" : 12.7654465\
},\
\"southwest\" : {\
\"lat\" : 41.9560237,\
\"lng\" : 12.745568\
}\
},\
\"location\" : {\
\"lat\" : 41.96298669999999,\
\"lng\" : 12.7566109\
},\
\"location_type\" : \"APPROXIMATE\",\
\"viewport\" : {\
\"northeast\" : {\
\"lat\" : 41.9732526,\
\"lng\" : 12.7654465\
},\
\"southwest\" : {\
\"lat\" : 41.9560237,\
\"lng\" : 12.745568\
}\
}\
},\
\"place_id\" : \"ChIJQbO9a615LxMRMpoTF6_GZ2I\",\
\"types\" : [ \"locality\", \"political\" ]\
}\
],\
\"status\" : \"OK\"\
}\
,OK",1,"Lazio","Città Metropolitana di Roma","Guidonia",\N,\N,\N,"Italy"\N,\N,"Villanova",\N,\N,\N,\N,\N,"00012",\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,\N,41.962986,12.756611,"locality","locality, political",3148330,"00012 Villanova RM, Italy","2017-10-30 17:28:40"
나는 PostgreSQL csv import from a MySQL csv export?
에서 힌트를 사용
\COPY addresses_googleresponse from 'myfile.csv' with delimiter AS ',' NULL AS '\\N' ESCAPE E'\\' CSV
을 시도했다 열 "numresults"에 대한 누락 된 데이터를
I :
- : -> 오류> 오류가 종료되지 않은 CSV 인용 필드 힌트를 사용
unterminated CSV quoted field in Postgres에서, 나는
\COPY addresses_googleresponse from 'myfile.csv' with delimiter AS ',' NULL AS '\\N' ESCAPE E'\\' quote E'\b' CSV
시도 이 형식의 두 번째 열과 관련된 잠재적 문제를 확인하십시오. \ copy (그리고 전처리없이)로 가져 오는 방법에 대한 아이디어는 환영 할 만하다. (copy는 사용할 수없고 \ copy 만 사용할 수있다.)
나는'\ copy' 여러 줄 레코드를 처리 할 수 있다고 생각하지 않습니다. 해당 데이터를 가져 오기 위해서는 다른 도구가 필요합니다. 동료가 사용한 도구를 아십니까? –
CVS 파일에있는 \ r \ n을 제거하면 문제가 해결 될 수 있다고 생각합니다. 행 하나에 행이 있어야합니다. –