나는`내 opencart 데이터베이스에 파일을 업로드하려고 가입 내부에 널 (null)을 생산하고 나는이 쿼리를 사용하고 있습니다 :로드 DATA LOCAL INFILE, 나는 제품 UPC 번호를 업로드 대량하려는 갱신
CREATE TEMPORARY TABLE `my_temp_table`
(
product_id INT(11),
name VARCHAR(255),
upc VARCHAR(12)
);
LOAD DATA LOCAL INFILE '/home/mupckuco/dev/oc_product.csv'
INTO TABLE `my_temp_table`
FIELDS TERMINATED BY ','
(`product_id`, `name`, `upc`);
UPDATE `oc_product`
INNER JOIN `my_temp_table` on `my_temp_table`.`product_id` = `oc_product`.`product_id`
SET `oc_product`.`upc` = `my_temp_table`.`upc`;
DROP TEMPORARY TABLE `my_temp_table`;
을
SELECT `oc_product`.`product_id` , `oc_product_description`.`name` , `oc_product`.`upc`
FROM `oc_product`
INNER JOIN `oc_product_description` ON `oc_product`.`product_id` = `oc_product_description`.`product_id`
하지만 불행하게도,이 라인
UPDATE `oc_product` INNER JOIN `my_temp_table` on `my_temp_table`.`product_id` = `oc_product`.`product_id` SET `oc_product`.`upc` = `my_temp_table`.`upc`
:
첫째 나는 제품 ID, 제품 이름 및 다음 쿼리와 제품 UPC와 열이있는 테이블을 수출했다
은 테이블에 NULL을 삽입하고 있습니다.
나는 임시 테이블이 아닌 일반 테이블을 만들기 위해 먼저 시도 했으므로 UPC 열의 모든 항목이 NULL로 삽입되었다.
Microsoft Excel 용 CSV로 내보내기를하고 있는데 같은 확장명으로 파일을 저장하고 있습니다. 문제는 어디에있을 수 있습니까?
이 업데이트 한 후 CSV 파일에서 몇 가지 예와 my_temp_table 결과입니다
'LOAD DATA INFILE'뒤에 csv ** 및 ** 임시 테이블 샘플의 행 샘플을 표시하십시오. – Parfait
나는 질문을 편집했다, 이것이 명확하게 희망한다 –
중대한! 감사. Excel 파일 열 B 및 C의 서식을 * Text *로 지정해보십시오. 'LOCAL' 명령 행에 추가하십시오 : 'ENCLOSED BY' "'\ r \ n'; ' – Parfait