Ben yüklemek için kendi makinesinde (önceden belirlenmiş bir formatta) bir CSV seçebilirsiniz müvekkilime (php kullanarak) bir aktarıcı kuruyorum. CSV olasılıkla 4000-5000 satır olacaktır. Php CSV her satırı okuma ve DB tabloya doğrudan takarak dosyasını işleyecek. Bu kısım kolay.
Zaten tabloda VE EĞER bu 3 alanda eşleşen combo varsa Ancak, ideal veritabanı tablo bu verileri ekleme önce, ben sütunlar (A, B, ve C) 3 incelemek ve görmek için kontrol etmek istiyorum SO ben yerine bir çok ekleme daha bu satırı güncelleştirmek. Ben bu 3 sütun eşleşen bir combo yoksa ben gitmek önde ve tabloya veri ekleme, satır INSERT istiyorum.
Benim ilk düşünce benim tablodaki sütunları A, B, ve C benzersiz bir dizin yapmak ve sonra sadece her satır INSERT, her nasılsa (nedeniyle benim eşsiz indeksi kısıtlama) bir 'başarısız' INSERT algılamak ve daha sonra güncelleme yapmak olmasıdır . Bu yöntem benim tablosunda zaten eşleşen bir combo var, sadece görmek için her satır için ayrı bir SELECT sorgusu yapmak zorunda daha verimli olabilir gibi görünüyor.
Üçüncü bir yaklaşım sadece hiçbir MySQL benzersiz bir dizin kullanarak, her şeyi eklemek ve müşteri daha sonra o tablo sorgular zaman sonra sadece son benzersiz combo kapmak olabilir. Ancak ben bu tablodaki verilerin gereksiz bir ton önlemek için çalışıyorum.
En iyi uygulamaları veya akıllı yaklaşımlar Üzerine Düşünceler?