Merhaba arkadaşlar bu yazımızda laravel ile veritabanından veri silme işlemini anlatmaya çalışacağım.
Tablodan kayıtları silmek için Query builder'ın DELETE yöntemi kullanılabilir.
Delete yöntemini çağırmadan önce "where" ifadesini ekleyerek silme ifadelerini kısıtlayabilirsiniz.
Temel kullanımı şu şekildedir;
DB::table('users')->delete();
DB::table('users')->where('reyting', '>', 100)->delete();
Bazı durumlarda veritabanı tablomuzdaki tüm kayıtları silmek isteyebiliriz. Bunun için truncate metodunu kullanabiliriz.
Temel kullanımı şu şekildedir.
DB::table('users')->truncate();
Burada atlamamız gerek kural şudur. Controller dosyamızın başına şunu yazmamız gerekmektedir.
use DB;
Eğer bunu yazmazsak veritabanı sınıfını çağırmadığımız için program hata verecektir.
Örnek bir controller kullanımı şöyledir.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
class UserController extends Controller {
public function veriSil($id)
{
DB::delete('DELETE FROM users WHERE id = ?', [$id]);
echo ("User Record deleted successfully.");
return redirect()->route('users.index');
}
}