2011-01-12 15 views
1

Ich muss einige Daten in meine Datenbank importieren. Und es gibt einige Datensätze bereits in der Tabelle vorhanden, nicht alle. Also, was ich will, das tun:Externe Daten in die Datenbank einfügen

  1. Führen Sie einen PHP-Skript für Daten in der Tabelle von Eingangsarray

  2. Machen DATA_ID einzigartig (nicht Primärschlüssel) in MySQL-Tabelle

  3. Einfügen Während des Einfügen über PHP-Skript, wenn die gleiche data_id vorhanden ist, nicht die Ausführung stoppen, sondern diesen Datensatz überspringen und als nächstes verarbeiten.

so etwas möchte ich tun.

Aber mein Skript beendet die Ausführung, wenn Data_id wiederholt wird.

kann mir jemand erklären, wie ich damit umgehen kann.

Ich möchte nicht einchecken Datenbank, die ID data_id ist bereits vorhanden, dann überspringe diesen Datensatz sonst einfügen, weil das Seite sehr langsam machen wird.

+0

Nun, das ist ein Widerspruch, der schwer zu lösen sein wird. Sie müssten entweder data_id nicht eindeutig machen oder die Daten fixieren - ich glaube nicht, dass es einen anderen Weg gibt –

+0

Wenn nicht eindeutig, dann muss ich die gesamte Tabelle überprüfen, wenn diese bereits existiert. Das wird die Seite langsam machen –

+0

Ich sehe. 'INSERT IGNORE' könnte helfen, wie @predrag vorschlägt - es wird einfach sein, die SQL-Anweisungen entsprechend zu transformieren. –

Antwort

1

Verwenden insert ignore into table (fields) values (values)

Dies funktioniert

Verwandte Themen