2016-05-26 14 views
3

Ich habe eine Klasse, die das Illuminate \ Database \ Query \ Builder erbt und eine benutzerdefinierte Methode für das Einfügen bei der Aktualisierung duplizierter Schlüssel erstellt.Laravel 5 Query Builder - Anhängen von "ON DUPLICATE KEY UPDATE" an einen insert() -Aufruf

Gibt es eine Möglichkeit, ein Suffix an einen Aufruf von insert() anzuhängen?

Ich habe mich ein wenig umgeschaut, und es gibt nicht viele Ressourcen für Suffixe oder Präfixe für SQL-Abfragen in Laravels Abfrage-Generator.

Wenn vermeidbar würde ich hoffen, den Körper der ursprünglichen insert() -Methode in Query Builder in meinen benutzerdefinierten zu kopieren, weil es keine gute Übung ist.

Jede Hilfe ist zu schätzen. Vielen Dank!

Bitte beachten Sie, dass ich Eloquent aus verschiedenen Gründen nicht verwende, aber es ist zu viel, um in dieser Frage zu erklären, und es liegt außerhalb des Geltungsbereichs.

Antwort

-3

versuchen dies als SQL:

INSERT INTO table (a,b,c) VALUES (1,2,3) 
ON DUPLICATE KEY UPDATE c=c+1; 
+0

Leider kann ich Ihre Antwort nicht als richtig markieren, weil sie meine Frage nicht beantwortet. –

0

Ich habe dies nicht in der Lage gewesen, eine Möglichkeit zu finden, zu tun in Query Builder selbst (kurz „raw“, die Art der Punkt verpasst). Sie können jedoch bei Update Duplicate Data when insert data in laravel

bei Laravel 5.1 Create or Update on Duplicate oder die damit verbundenen Frage zum Beispiel auf dem „Eloquent“ updateOrCreate() -Methode, diskutiert aussehen wollen Es gibt auch eine Implementierung eine insertOnDuplicateKeyUpdate() Funktion bei https://gist.github.com/VadimGut/672da182921f70dfcea972e207e86676, der rohen SQL assembliert und läuft es.