Einen Guten Morgen wünsche ich!!
Meine Situation:
Ich möchte über ein cronjob mehrere hundert Datensätze täglich in eine Tabelle schreiben. Ein Datensatz besteht unter anderem aus einem Longtext (einer description), einem Titel und einer zugehörigen location (PLZ und Ort). Es kann nun vorkommen, dass Titel und location gleich sind, jedoch die description verschieden ist. Es bleibt mir also leider nichts übrig als vor jedem Insert zu prüfen, ob diese description bereits vorhanden ist. Problem ist, dass jeweils mehrere tausende Datensätze verglichen werden müssen und das dauert bei der Prüfung ewig denke ich...
Meine Frage:
Wie prüft man sowas am besten?
Oder bleibt mir nur eine Variante wie:
Was haltet ihr von einem unique auf die description spalte in der DB?
Ich habe noch folgendes gelesen:
Ist das evtl eine Lösung?
Bisher musste ich so große Texte noch nicht vergleichen vielleicht habt ihr einen Guten Ansatz für mich.
Grüße
Meine Situation:
Ich möchte über ein cronjob mehrere hundert Datensätze täglich in eine Tabelle schreiben. Ein Datensatz besteht unter anderem aus einem Longtext (einer description), einem Titel und einer zugehörigen location (PLZ und Ort). Es kann nun vorkommen, dass Titel und location gleich sind, jedoch die description verschieden ist. Es bleibt mir also leider nichts übrig als vor jedem Insert zu prüfen, ob diese description bereits vorhanden ist. Problem ist, dass jeweils mehrere tausende Datensätze verglichen werden müssen und das dauert bei der Prüfung ewig denke ich...
Meine Frage:
Wie prüft man sowas am besten?
Oder bleibt mir nur eine Variante wie:
PHP-Code:
$sql = 'SELECT title, locationdata_id, description FROM tbl WHERE title = "'.$title.'" AND locationdata_id = '.$locationdata_id.' AND description = "'.$description.'"';
$result = mysql_query($sql);
$rowcheck = mysql_fetch_assoc($result);
if(!$rowcheck) {
// Inserte
}
Ich habe noch folgendes gelesen:
Ich hab noch nen interessanten Ansatz für nen Work around, man verwendet nen Sha1 Hashwert den man in nen VarChar schreibt und diesen auf Unique setzt. Dadurch kann man dann auch Elemente vom Typ "SmallText", "LongText" und "Text" einwandfrei auf Duplicate prüfen.
Bisher musste ich so große Texte noch nicht vergleichen vielleicht habt ihr einen Guten Ansatz für mich.
Grüße
Kommentar