찾다

 >  Q&A  >  본문

MySQL에서 LOAD DATA를 사용하여 날짜 데이터를 로드하는 방법

<p>MySQL의 날짜 열에 대한 기본 날짜 형식은 <code>YYYY-MM-DD HH:MM:SS</code>입니다. </p> <p>로드하려는 데이터 파일에 <code>DD-MON-YY HH:MM:SS</code> 형식의 날짜 필드가 있습니다. <code>LOAD DATA</code> 명령을 사용하여 이 파일을 로드하면 데이터베이스가 혼란스러워지고 모든 날짜 항목이 <code>0000-00-00 00:00:00</code> </p> <p>이것은 <code>STR_TO_DATE</code> 옵션을 사용한 테스트이지만 작동하지 않습니다.</p> <p><strong>测试文件(test_temp.csv)</strong></p> <pre class="brush:php;toolbar:false;">c1, c2 6월 12일 7일 22:50:19, "abc" 6월 13일 7시 22:50:19, "bcd"</pre> <p><strong>测试表(temp_test)</strong></p> <pre class="brush:php;toolbar:false;">temp_test; 설명 +---------+------------+------+------+---------+---- ---+ | 필드 | 유형 | 널 | 열쇠 | 기본값 | 추가 | +---------+------------+------+------+---------+---- ---+ | c1 | 날짜/시간 | 예 | | NULL | | | c2 | varchar(10) | 예 | | NULL | | +---------+------------+------+------+---------+---- ---+</pre> <p><strong>数据加载命令:</strong></p> <pre class="brush:php;toolbar:false;">데이터 로드 파일 '/var/lib/mysql/DataSet-1/temp_test.csv' 무시하다 테이블 temp_test에 ','로 끝나는 필드 '''로 묶음 'rn'으로 끝나는 줄 1줄 무시 (@var_c1,c2) c1 = STR_TO_DATE(@var_c1,'%d-%b-%y %h:%i:%s');</pre> <p><strong>판매</strong></p> <pre class="brush:php;toolbar:false;">쿼리 확인, 2개 행이 영향을 받음, 2개 경고(0.00초) 기록: 2 삭제: 0 건너뛰기: 0 경고: 0 MySQL> 경고 표시; +---------+------+--------- --------------------------+ | 레벨 | 코드 | 메시지 | +---------+------+--------- --------------------------+ | 오류 | 1411 | 잘못된 날짜 시간 값: str_to_date 함수에 대한 '07-JUN-12 22:50:19' | | 오류 | 1411 | 잘못된 날짜 시간 값: str_to_date 함수에 대한 '07-JUN-13 22:50:19' | +---------+------+--------- --------------------------+ MySQL> temp_test에서 *를 선택하십시오. +------+------+ | c1 | c2 | +------+------+ | NULL | ABC | | NULL | BCD | +------+------+</pre> <p>问题출재:</p> <올> <li>输入日期列(应该是<code>07-JUN-12</code>还是<code>07-Jun-12</code>)或</li> <li>나의 格式字符串(<code>%d-%b-%y</code>)或</li> <li>其他原因?</li>


P粉738046172P粉738046172468일 전526

모든 응답(1)나는 대답할 것이다

  • P粉852578075

    P粉8525780752023-08-23 09:28:32

    당신의 것STR_TO_DATE()的格式字符串无效。您的样本数据中的小时使用24小时制(%H%k),而不是12小时制(%h). 가능한 모든 날짜 형식 지정자를 여기에서 볼 수 있습니다.

    으아악

    이(가)

    로 수정되었습니다. 으아악

    귀하의 진술서는 다음과 같습니다

    으아악

    샘플 데이터 로딩 후

    으아악

    회신하다
    0
  • 취소회신하다