Ein paar Gedanken dazu:
* Primärschlüssel, technische (automatisch generiert) helfen Dir nicht beim Existenzabgleich, denn die einzufügenden Daten besitzen diesen eindeutigen aber "zufälligen" Schlüssel nicht.
*"ein paar tausend Datensätze"
bekommst Du tatsächlich sehr schnell über externe Tabellen in die
DB
* da empfiehlt sich ggF eine extra Importtabelle fürs Laden (alles rein, ohne Abgleich)
* im 2. Schritt dann die erwähnten Merges / Update or Insert Statements und zwar nicht Satz für Satz, sondern die komplette Zwischentabelle in einem Rutsch. Abgleich über fachliche Schlüsselfelder, ggf mehrere