web-dev-qa-db-ja.com

phpmyadminのにCSVをインポートします

私はこのようなCSVを持っています

candidate_id,show_on_site,first_name,surname,gender,DOB,showdob,Location,height,eyes,hair_colour,hair_length,accents,unions,training,url,visible,availability
,26,urban talent,Strawberry,Shortcake,Female,11 Jan 1942,FALSE,Manchester,5'2,Brown,Black,Mid-length,Native Lancashire,Equity,Urban Talent TV & Drama Workshops,Strawberry-Shortcake---5.4.06.jpg,Yes,Yes
,29,urban talent,Rainbow,Brite,Female,12 Oct 1970,FALSE,Manchester,5'7,Brown,Dark Brown,Long,"Native Manchester, others include - Cheshire, RP, Patois, Standard USA",Equity Member,"BA Acting Studies, Arden School of Theatre<br>Urban Talent TV & Drama Workshops",Rainbow Brite 1_1.jpg,Yes,Yes
,31,urban talent,Webbigail,Vanderquack,Female,4 Jun 1947,FALSE,Manchester,5'0,Hazel,Blonde,Mid-length,"Native Manchester, others include - Liverpool, Cockney, Birmingham, West Country, Standard Scottish, Standard Welch, S Irish",,Manchester School of Acting<br>3 Years at David Johnson Acting Workshops,Webbigail Vanderquack web 1.jpg,Yes,Yes
,33,urban talent,Smurfette,Smurf,Female,1 Jul 1979,FALSE,Manchester,5'2,Dark Brown,Dark Brown,Long,"Native Manchester, others include - Liverpool, RP, Lancashire, Birmingham, Cockney, Devon, Geordie, West Country, Glasgow, Edinburgh, South African, Standard & Southern US, Persian, Asian, Indian ~ good ear for accents",,"Manchester School of Acting, with Mark Hudson<br>North Cheshire Theatre College, with David Johnson<Oldham Theatre Workshop",Smurfette Smurf web 4.jpg,Yes,Yes

データベースの既存の列にこのデータを挿入することは可能ですか?新しいテーブルとして挿入し、列名A、B、C、D、Eなどを持つように見えるのはすべてです.

24
Udders

PhpMyAdminでテーブルをクリックし、ページ上部の[インポート]タブをクリックします。

Csvファイルを参照して開きます。文字セットはそのままにします。巨大なデータセット(または遅いサーバー)がない限り、部分インポートのチェックを外します。ファイルを選択した後、フォーマットはすでに「CSV」を選択しているはずです。そうでない場合は、(LOAD DATAを使用せずに)選択します。インポートする前にテーブル全体をクリアする場合は、「テーブルデータをファイルに置き換える」をオンにします。オプションで、CSVファイルに重複があると思われる場合は、「重複行を無視する」にチェックマークを付けます。ここで重要な部分は、次の4つのフィールドをこれらの値に設定します。

Fields terminated by: ,
Fields enclosed by: “
Fields escaped by: \
Lines terminated by: auto

現在、これらはデフォルトでセミコロンになっている「Fields terminate by」を除いてデフォルトに一致します。

[Go]ボタンをクリックすると、正常に実行されるはずです。

39
Ashwin A

PhpMyAdmin v.4.6.5.2には、チェックボックスオプション "があります。ファイルの最初の行には、テーブルの列名が含まれます。.. ":

enter image description here

5
Alex Daro

LOAD DATA INFILE SQLステートメントはCSVファイルをインポートできますが、データを更新することはできません。ただし、使用できるトリックがあります。

  • インポートに使用する別の一時テーブルを作成します
  • CSCからこのテーブルにロードします

    LOAD DATA LOCAL INFILE '/file.csv'
    INTO TABLE temp_table
    FIELDS TERMINATED BY ','
    LINES TERMINATED BY '\n'
    (field1, field2, field3); 
    
  • テーブルを結合する実際のテーブルを更新する

    UPDATE maintable
    INNER JOIN temp_table A USING (field1)
    SET maintable.field1 = temp_table.field1
    
4
Starx

これは、id(auto increment filed missing)が原因で発生します。 IDフィールドにカンマを追加してテキストエディターで編集すると、これは解決されます。

1
Ruwantha