Çözüldü Veri Tabanına Birden Fazla Kayıt Gönderme

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Local

Bronz Üye
Kullanıcı Bilgileri
Katılım
19 Ağu 2023
Mesajlar
254
Aldığı beğeni
22
Excel Versiyonu
Office 2016 TR
Konuyu Başlatan
Merhaba ekteki dosyamda Çoklu Kayıt Formunda tek seferde çoklu kayıtları gönderebilecek form mevcut tek seferde sql veri tabanına gönderme yapmak istiyorum form üzerinde açıklama mevcuttur.
 

Ekli dosyalar

  • örnek dosya1 talep (1).xlsm
    426.3 KB · Gösterim: 3
Çözüm
Merhaba ekteki dosyamda Çoklu Kayıt Formunda tek seferde çoklu kayıtları gönderebilecek form mevcut tek seferde sql veri tabanına gönderme yapmak istiyorum form üzerinde açıklama mevcuttur.
Yöntem olarak Serkan beyin anlatımını uygulayabilirsiniz;
Mysql veri tabanına birden fazla veriyi insert, delete, update yapmamız gerekebilir. Bu yazımda sizlere bunu mysql ile nasıl yapacağımızı anlatmaya çalışacağım.

İlk olarak mysql tablomuzu oluşturalım.

CREATE TABLE yazilar (
yazi_id int(20) UNSIGNED NOT NULL AUTO_INCREMENT ,
yazi text NOT NULL ,
baslik text NOT NULL ,
yazi_durumu varchar(20) NOT NULL ,
PRIMARY KEY (yazi_id)
);

Tablomuzda id(primary key), yazi, baslik, ve durum sütunları...

SNNAY

Excel Dostu
Kullanıcı Bilgileri
Katılım
15 Mar 2024
Mesajlar
102
Çözümler
22
Aldığı beğeni
119
Excel Versiyonu
Office 2021 TR
Merhaba ekteki dosyamda Çoklu Kayıt Formunda tek seferde çoklu kayıtları gönderebilecek form mevcut tek seferde sql veri tabanına gönderme yapmak istiyorum form üzerinde açıklama mevcuttur.
Yöntem olarak Serkan beyin anlatımını uygulayabilirsiniz;
Mysql veri tabanına birden fazla veriyi insert, delete, update yapmamız gerekebilir. Bu yazımda sizlere bunu mysql ile nasıl yapacağımızı anlatmaya çalışacağım.

İlk olarak mysql tablomuzu oluşturalım.

CREATE TABLE yazilar (
yazi_id int(20) UNSIGNED NOT NULL AUTO_INCREMENT ,
yazi text NOT NULL ,
baslik text NOT NULL ,
yazi_durumu varchar(20) NOT NULL ,
PRIMARY KEY (yazi_id)
);

Tablomuzda id(primary key), yazi, baslik, ve durum sütunları bulunmaktadır. Örneklerimizi bu tabloya göre yapacağız .

Çoklu INSERT​

Tablomuza 4 SATIR ekleyelim . Her SATIR için tek tek sorgu yapmak yerine tek seferde tablomuza ekleyeceğiz.

INSERT INTO tablo_adi
(id, yazi, baslik, durum)
VALUES
( 1, 'Yazi 1', 'Başlık 1', 'yayinda'),
( 2, 'Yazi 2', 'Başlık 2', 'yayinda'),
( 3, 'Yazi 3', 'Başlık 3', 'yayinda'),
( 4, 'Yazi 4', 'Başlık 4', 'yayinda');
Sütun isimlerini yazmadan insert işlemeni şu şekilde de yapabilirsiniz .

INSERT INTO tablo_adi
VALUES
( 1, 'Yazi 1', 'Başlık 1', 'yayinda'),
( 2, 'Yazi 2', 'Başlık 2', 'yayinda'),
( 3, 'Yazi 3', 'Başlık 3', 'yayinda'),
( 4, 'Yazi 4', 'Başlık 4', 'yayinda');

Çoklu UPDATE​

Şimdi bu eklediğimiz 4 satırı güncelleyelim. Bu 4 satırdaki 'durum' sütunundaki değerleri 'taslak' olarak değiştirelim. Sql kodumuz şu şekilde olacak .

UPDATE tablo_adi
SET durum= 'taslak'
WHERE id IN (1,2,3,4);
Bütün satırlardaki değerleri farklı olarak kaydetmek isterseniz sql kodumuz ;

UPDATE tablo_adi SET
yazi = CASE
WHEN id = 1 THEN 'yazi 1 update'
WHEN id = 2 THEN 'yazi 1 update'
END,
baslik = CASE
WHEN id = 1 THEN 'Baslik 1 update'
WHEN id = 2 THEN 'Baslik 1 update'
END
WHERE id IN (1,2);
Aslında buradaki WHERE id (1,2) yazmadığımızda da update işlemini daha yavaş yapıyor .

WHERE id (1,2) kullandığımızda sorgu süresi :
Affected rows: 2
Time: 0.001ms

WHERE id (1,2) kullanmadığımızda sorgu süresi :
Affected rows: 2
Time: 0.003ms

Çoklu DELETE​

Şimdi de eklediğimiz bu 4 satırı silelim :

DELETE FROM tablo_adi WHERE id IN (1,2,3,4);
Kısacası TEK satırlık kayıt yapılan veri bilgilerini kaç SATIR çoğaltacaksanız kodu ona göre düzenleyeceksiniz
 
Çözüm
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Üst