MySQL Bulk Delete, Update ve Insert İşlemleri
En popüler SQL veritabanlarından ve PHP ile neredeyse sorunsuz çalışan bir veritabanı olan MySQL için kendini tekrar eden insert ve update’ler yerine daha kapsamlı geniş ve işimizi bir o kadar hızlandıracak sorgular yapmak mümkün. Özellikle insert işlemlerinde büyük kolaylık sağlayacaktır birazdan göreceğimiz bulk insert işlemi.
Bulk Insert
INSERT INTO ornek (id, adi, deger1, email) VALUES (101, 'İsim 1', 'deger 1', 'email1'), (102, 'İsim 2', 'deger 2', 'email2'), (103, 'İsim 3', 'deger 3', 'email3'), (104, 'İsim 4', 'deger 4', 'email4');
Ekleme yapılacak alanlarımızı yazdıktan sonra her veri bloğundan sonra virgül eklememiz ve ardından yeni veri bloğumuzu eklememiz yeterli.
Bulk Update
UPDATE ornek SET urun_aciklama = CASE WHEN id = 1 THEN 'iOS 7 Sürümlü Son Telefon' WHEN id = 2 THEN 'Android 4.2 Sürümlü Son Telefon' END, baslik = CASE WHEN id = 1 THEN 'Apple iPhone 5s' WHEN id = 2 THEN 'Sony Xperia Z1' END WHERE id IN (1,2);
PHP’de kullanılan İF – Case mantığına çok benzer bir mantıkla yapılan update işlemleri.
Bulk Delete
DELETE FROM tablo WHERE id IN (1,2,3,4);