문제

내가 노력하고 있을 가져오 .csv 파일 로 MySQL 을 통해 테이블 phpMyAdmin.

니다.csv 파일로 구분하여 파이프,formated 다음과 같다:

data|d'ata|d'a"ta|dat"a|
data|"da"ta|data|da't'a|
dat'a|data|da"ta"|da'ta|

데이터 따옴표를 포함.내가 통제 할 수 없는 형식은 내가 받은 데이터가 생성할 수 있습니다.

은 문제가있는 경우 |에 의해 다음을 따옴표.난 항상"잘못된 필드 개수에서 CSV 입력에서 선 N"오류가 있습니다.

나에서 파일을 업로드 가져오기 페이지를 사용하여,라틴어 1,CSV,종료|으로 구분하여".

나는 그냥 변경"동봉하여"캐릭터, 지만,나는 유지 "잘못된 매개변수에 대한 CSV 가져오기:필로 묶어".가 다양한 캐릭터와 함께 성공했다.

어떻게 알 수 있습니 MySQL 을 받아에서 이 형식 phpMyAdmin?

설정 이러한 테이블을 작성하는 첫 번째 단계는 프로그램을 사용하여 업로드 gzip 으로 압축.csv 파일을 유지 카탈로그의 e-commerce 사이트입니다.

도움이 되었습니까?

해결책

나는 데 유사한 문제에 대해 마지막 몇 시간 동안 나는 마지막으로 입수 가져오기 작동하도록 하겠 공유 솔루션에도 도움이 되지 않을 수 있습니다 원래 포스터입니다.

짧은 버전을 사용:
1.) 는 경우에는 Excel 파일로 저장 ODS(문서 열기 스프레드시트)형식입니다.1a.) 는 경우는 파일이 어떤 종류의 텍스트 형식으로 구분 기호(과 같은 원래 포스터),그런 다음 엑셀 오픈,그리고 일단 내부의 엑셀 파일을 사용하여/을 열고 파일을 열 수 있습니다.거기 당신은 당신이 선택할 수 있는 적절한 구분을 보려면 파일입니다.는지 확인 파일을 보기 좋아요,그 다음으로 저장 ODS 형식으로(그리고 파일을 닫).

2.) 에서 파일을 열고 OpenOffice 계산기(무료서 다운로드 Oracle/Sun).2a.) Ctrl 키를 누르-F 열을 찾을 대화 상자입니다.추가 옵션을 클릭하고 있는지 확인"현재의 선택만이"확인되지 않습니다.2b.) 검색에 대한 double quotes.가 없는 경우에 당신의 파일을 건너뛸 수 있습 단계 4and5.
3.) 으로 저장->텍스트를 제공합니다.에 대한 옵션을 선택 UTF-8 형식(보"u"3 시간을 얻을 수 있는 빠른),select";"(세미콜론)으로 구분을 선택합따옴표에 대한 텍스트입니다.4.) 이 있다면 쌍따옴표에서 찾을 당신의 파일 단계에서 2b,계속 그렇지 않으면 그냥 가져오기로 파일 CSV 와 phpMyAdmin(6 단계를 참조하십시오).그것은 작업해야 합니다.5a.) 에서 열린 단어나 어떤 다른 텍스트 편집기에서 당신이 할 수 있 찾기>바꿉니다.
5b.) 모든 인스턴스의 세 번에 따옴표 행을 검색하여"""(당신이 경우에 발견할 수 있습도 검색하려는 4,5,6etc.에 행할 때까지 당신이 비어 있을 경우).5c.) 대체"""으로 자리 표시자는 발견되지 않는 다른 곳에서 당신의 csv.대체들과'니다.'.5d.) 찾기->의""(두 쌍따옴표에 열)와\"(슬래시고 더블 견적서).5e.) 찾기->대체의 모든 인스턴스가 있습니다.(또는 당신의 선택 자리 표시자 단계에서 5c)와\"".5c 및 이 단계 모든 지수 발생의 끝에서 필드기 전에는 텍스트 구분 견적을 제대로'탈출'.5f.) 마지막으로,파일을 저장,유지에 UTF-8 일(또는 어떤 형식으로 필요한 가져오기).6.a)phpMyAdmin 을 가져오기"를 클릭하고"탭을 클릭하면"파일을 선택합니"버튼을 선택한 파일 저장됩니다.6b.) 에서'형식의 파일이 가져온'CSV 선택해야 합니다.면 열 이름은 첫 번째 행에 있는지 확인,체크박스를 체크합니다.가장 중요한 것은,'Fields terminated by'설정해야 합니다;(세미콜론),'동봉된 필드에 설정해야"(double quotes),그리고'필드를 탈출하여'설정해야 합\(슬래시).당신이 집에 당신의 파일에 다음과 같은 3 단계하고,필요한 경우여 다음과 같은 단계를 5a5f.

7.) "가기"를 클릭하고 기도하지 않은 폐기물의 또 다른 시간입니다.

지금 하는 짧은 버전은 이 장에,나는 건 버전입니다.

그 말을 충분,있는 것 같 2 개 중요한 문제입 통 phpmyadmin.1.) 거기에 몇 가지 종류의 메모리 문제를 방지하는 큰 Excel 및 ODS 파일(얼마나 큰가?아직 확신이)를 가져옵니다.2.) 도 OpenOffice 도 Excel 를 저장 하는 것들의 csv 파일에서는 방법과 호환되는 phpmyadmin.그들은 탈출하려면 쌍따옴표로 double quotes.phpMyAdmin 원하는 따옴표로 이스케이프 다른 것처럼,기대됩니다.

첫 번째 문제는 희망이 될 수정에서의 업데이트 phpmyadmin(및/또는 Excel 가져오는 기능 추가'를 PHPExcel').두 번째 하나 수정하는 경우가 있었는 쉬운 방법을 변경 escape 문자를 위한 Excel 또는 ODS 파일로 저장 CSV 경우,또는 phpMyAdmin 을 만들 수 있습 호환성의 형식으로(어야 하는 실제로 매우 쉽습니다.단순히 그것을 찾을 바꾸기 행동이 우리를 수동으로 수행하려면 위의 스커트 더블 견적 문제).

이 도움이 되었으면 좋겠습니다 누군가로,저는 3~4 시간을 보냈을 발견하는 이 솔루션과 다른 시간에 그것을 쓰기.난 그것은 너무 오래 하지만 기대했다는 사람들을 돕는 모든 수준의 전문 지식을 제로에서 어디든지 나는(아마도 주변 0.1).

다른 팁

나는 작동하는 해킹을 발견했다 - 나는 $를 "Encled by"캐릭터로 사용하고 모든 것이 잘하다. 이것은 유럽 사이트를위한 것이기 때문에 테이블 내용에서 결코 사용하지 않을 것입니다.

모든 '오른쪽 앞에 를 추가하여 CSV 파일을 수정할 수 있습니까?

"Fields Encleds"와 "Fields By Escaped"를 읽는 상자를 비워 보셨습니까? 나는 phpmyadmin을 사용하지 않았지만 Google은 제안합니다 다른 사람들은이 방법으로 성공했습니다.

당신은 자신의 글을 쓰는 것만으로 생각할 수 있습니다 로드 데이터 쿼리, 어쨌든이 프로세스는 어느 시점에서 응용 프로그램의 일부가되기 때문에 어쨌든 하나가 필요한 것 같습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top