MySQL INSERT sorgusu nasıl yazılır? (Tekli ve çoklu kayıt ekleme)

Giriş

MySQL, yaygın olarak kullanılan bir veritabanı yönetim sistemidir ve veritabanlarına veri eklemek için kullanılan temel komutlardan biri INSERT komutudur. INSERT sorgusu, bir veritabanı tablosuna yeni kayıtlar eklemek için kullanılır. Tekli veya çoklu kayıt ekleme işlemleri de mevcut olup, bu işlemleri gerçekleştirirken doğru sözdiziminin kullanılması gerekmektedir.

Tekli Kayıt Ekleme

Tekli kayıt eklemek için INSERT INTO komutu kullanılır. Bu komut, belirli bir tablonun adını ve eklenecek olan değerlerin hangi sütunlarda yer alacağını belirtir. Temel sözdizimi aşağıdaki gibidir:

“`sql
INSERT INTO tablo_adi (sütun1, sütun2, sütun3, …)
VALUES (değer1, değer2, değer3, …);
“`

Burada “tablo_adi” eklenmek istenen kayıtların tutulacağı tablonun adıdır. Sütun isimleri parantez içerisinde belirtilirken, VALUES anahtar kelimesinin ardından eklenmek istenen değerler belirtilir. Örneğin, “musteriler” adında bir tablo varsa ve bu tablonun “isim”, “soyisim” ve “email” adında üç sütunu bulunuyorsa, bir müşteri kaydı eklemek için aşağıdaki şekilde bir sorgu yazılabilir:

“`sql
INSERT INTO musteriler (isim, soyisim, email)
VALUES (‘Ahmet’, ‘Yılmaz’, ‘ahmet.yilmaz@example.com’);
“`

Bu sorgu, “musteriler” tablosuna yeni bir kayıt ekleyecektir.

Çoklu Kayıt Ekleme

MySQL veritabanında birden fazla kayıt eklemek için de INSERT komutu aynı şekilde kullanılabilir. Ancak, çoklu değer ekleme işlemleri tek bir sorgu içinde yapılabilir. Bunun için VALUES anahtar kelimesinin ardından birden fazla değer seti belirtilir. Çoklu kayıt eklemek için temel sözdizimi şu şekildedir:

“`sql
INSERT INTO tablo_adi (sütun1, sütun2, sütun3, …)
VALUES (değer1a, değer2a, değer3a, …),
(değer1b, değer2b, değer3b, …),
(değer1c, değer2c, değer3c, …);
“`

Bu yapıda, her bir değer seti parantez içerisinde belirtilmelidir ve setler arasında virgülle ayrılmalıdır. Örneğin, yukarıda belirtilen “musteriler” tablosuna aynı anda üç müşteri eklemek için şu şekilde bir sorgu yazılabilir:

“`sql
INSERT INTO musteriler (isim, soyisim, email)
VALUES (‘Ali’, ‘Demir’, ‘ali.demir@example.com’),
(‘Mehmet’, ‘Kara’, ‘mehmet.kara@example.com’),
(‘Ayşe’, ‘Çelik’, ‘ayse.celik@example.com’);
“`

Yukarıdaki sorgu, “musteriler” tablosuna üç yeni kayıt ekler. Her bir kayıt, belirtilen sütun adlarına karşılık gelen değerleri alır.

Kayıt Eklerken Dikkat Edilmesi Gerekenler

INSERT komutu kullanırken bazı önemli noktalara dikkat edilmelidir:

1. Veri Türleri: Eklenecek değerlerin, tablonun sütunları ile uyumlu veri türlerine sahip olması gerekmektedir. Aksi takdirde, hata mesajları oluşabilir.

2. Zorunlu Alanlar: Eğer tablonun belirli sütunları NOT NULL olarak tanımlanmışsa, bu alanlara mutlaka bir değer sağlanmalıdır. Aksi takdirde kayıt eklenmesi mümkün olmayacaktır.

3. Varsayılan Değerler: Eğer bir sütun için değer belirtilmezse ve bu sütun için bir varsayılan değer tanımlandıysa, o sütun otomatik olarak varsayılan değeri alır.

Özel Durumlar

Bazı durumlarda, NULL değeri eklenecekse, bunun doğrudan belirtilmesi gerekmektedir. Örneğin, aşağıdaki sorguda “telefon” sütununa NULL değeri eklenmektedir:

“`sql
INSERT INTO musteriler (isim, soyisim, email, telefon)
VALUES (‘Zeynep’, ‘Akman’, ‘zeynep.akman@example.com’, NULL);
“`

Hata Yönetimi

Kayıt eklerken meydana gelen hatalar, doğru hata mesajlarının elde edilmesi için sorgunun dikkatlice incelenmesi ve anlamlandırılması gereklidir. Ayrıca, “ON DUPLICATE KEY UPDATE” ifadesi kullanılarak, varsa zaten kayıtlı olan anahtarlar için güncelleme işlemleri de gerçekleştirilebilir.

Performans ve Optimizasyon

Veritabanına veri eklerken toplu (batch) ekleme işlemleri daha hızlıdır. Çoklu kayıtların tek sorguda eklenmesi, her bir kayıt için ayrı sorgu çalıştırmaktan daha performanslıdır. Bu nedenle, mümkün olduğunca toplu ekleme yapılması önerilir.

Sonuç

MySQL veritabanında INSERT komutu ile kayıt eklemek, oldukça temel ve yaygın bir işlemdir. Tekli ve çoklu ekleme yöntemleri, doğru sözdizimi ve dikkat noktaları ile başarıyla gerçekleştirilebilir. Veritabanı operasyonları yürütülürken, bu yöntemler ve ilgili kuralların dikkate alınması, veritabanı yönetimini daha etkili ve güvenilir hale getirecektir. MySQL, bu gibi işlemleri kolaylaştıran güçlü bir yapıya sahiptir ve kullanıcıların veri yönetimini optimize etmelerine olanak tanır.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

SON İÇERİKLER

İLGİNİZİ ÇEKEBİLİR