Update or Create di Laravel

Implementasi update or create di Laravel untuk mencegah duplikasi data

Update Or Create atau Upserts merupakan salah satu function pada model di Laravel. Hal ini dapat mencegah duplikasi data ketika anda akan menginsert ke database. Function ini menggunakan 2 parameter array. Array pertama adalah kondisi yang akan dicari, kemudian parameter array kedua adalah data yang akan diinsert atau diupdate.

Contoh:

User::updateOrCreate(
	[
		'email' => 'adi@example.com'
	], 
	[
		'name' => 'I Wayan Adi Sparta'
	]
);

Dari contoh diatas, laravel akan mencarikan data pada tabel users dengan kondisi email = adi@example.com. Apabila data user ditemukan, maka data name dari user akan diupdate menjadi I Wayan Adi Sparta. Sedangkan apabila tidak ada, maka akan diinsert data baru dengan attribute

[
	'email' => 'adi@example.com',
	'name' => 'I Wayan Adi Sparta'
]

Array yang menjadi parameter pertama dan kedua dapat lebih dari 1 properti seperti berikut:

User::updateOrCreate(
	[
		'email' => 'adi@example.com',
		'is_active' => 1
	], 
	[
		'name' => 'I Wayan Adi Sparta',
		'address' => 'Ubud, Gianyar'
	]
);

Saya bisa membuatkan anda Aplikasi berkualitas

© 2021 Adisparta. All rights reserved.