データベースにCSVファイルを追加する必要があります。しかし、1つのファイルを追加した後、数週間後にファイルの新しいアップデートを追加する必要があります。問題は重複した行が追加されることです。Mysqlに全く同じ3列の値を追加しないでください
私は行のIDを持っていないので、「City」、「Address」、「Location Name」と同じであるかどうか確認する必要があります。 3が一致している場合にのみ、新しい行をデータベースに入れません。
私はIGNORE
を試しましたが、プライマリキーとしてのID(と私はプライマリキーを持っていません)のみで動作しているようです。
「複数のプライマリキー」スレッドも読みましたが、作成に成功しませんでした。私が言う
$query = $this->db->query('
LOAD DATA INFILE "'.$path.'fichier/'.$fichier.'"
INTO TABLE location FIELDS TERMINATED BY ";"
LINES TERMINATED BY "'.$os2.'"
IGNORE 1 LINES ('.$name[1].','.$name[2].','.$name[3].','.$name[4].','.$name[5].','.$name[6].','.$name[7].','.$name[8].','.$name[9].','.$name[10].','.$name[11].','.$name[12].','.$name[13].','.$name[14].','.$name[15].','.$name[16].','.$name[17].','.$name[18].','.$name[19].')');
テーブル内のデータとファイル内のデータが同じ場合は、TRUNCATE TABLEを使用してファイル(古いデータと新しいデータ)からすべてのデータをロードできます。 – Hokusai
@hokusai私は3つの異なるファイルがあります:■2つのファイルがなくなるため、データを削除したり更新したファイルを追加することはできません:( – Firefly