Bu eğitimde, bir tabloya bir veya daha fazla satır eklemek için MySQL INSERT deyiminin nasıl kullanılacağını öğreneceksiniz.
INSERT deyimi, bir tabloya bir veya daha fazla satır eklemenizi sağlar. Aşağıdaki INSERT deyiminin sözdizimini gösterir:
1 2 3 4 |
INSERT INTO tablo(sutun1,sutun2,...) VALUES (deger1,deger2,...); |
Bu sözdiziminde
- Öncelikle, INSERT INTO yan tümcesinden sonra tablo adını ve parantez içindeki virgülle ayrılmış sütunların listesini belirtin.
- Sonra, VALUES anahtar sözcüğünü izleyen parantez içerisine karşılık gelen sütunların değerlerinin virgülle ayrılmış bir listesini koyun.
- Sütun ve değerlerin sayısı aynı olmalıdır. Ek olarak, sütunların konumları, değerlerinin konumlarına karşılık gelmelidir.
Tek bir INSERT deyimi kullanarak bir tabloya birden çok satır eklemek için aşağıdaki söz dizimini kullanırsınız:
1 2 3 4 5 6 7 8 |
INSERT INTO table(sutun1,sutun2,...) VALUES (deger11,deger12,...), (deger21,deger22,...), ... (degern1,degern2,...); |
Bu sözdiziminde, VALUES yan tümcesinde satırlar virgüllerle ayrılır.
MySQL INSERT INTO
Örnekleri
Aşağıda yazılan sorgular, yukarıdaki şekilden faydalanılarak oluşturulmuştur.
Örnek: Yazar tablosunu KEMAL UYUMAZ isimli yazarı ekleyin.
1 2 3 |
insert into yazar(yazarad,yazarsoyad) values('Kemal','UYUMAZ') |
Örnek: Biyografi türünü tür tablosuna ekleyiniz.
1 2 3 |
insert into tur values(NULL,'Biyografi') |
Örnek:10A sınıfı olan ÇAĞLAR ÜZÜMCÜ isimli erkek, sınıfı 9B olan LEYLA ALAGÖZ isimli kız ve sınıfı 11C olan Ayşe Bektaş isimli kız öğrencileri tek sorguda ekleyin.
1 2 3 4 5 6 7 |
insert into ogrenci(ograd,ogrsoyad,sinif,cinsiyet) values ('Çağlar','Üzümcü','10A','E'), ('Leyla','Alagöz','9B','K'), ('Ayşe','Bektaş','11C','K') |
MySQL Tarih Ekleme
Bir sütuna değişmez bir tarih değeri eklemek için aşağıdaki biçimi kullanırsınız:
1 2 3 |
'YYYY-MM-DD' |
Bu formatta:
- YYYY, örneğin 2018 olan dört basamaklı bir yılı temsil eder.
- MM, iki basamaklı bir ayı, örneğin 01, 02 ve 12’yi temsil eder.
- DD, iki basamaklı bir günü, örneğin 01, 02, 30’u temsil eder.
Örnek:Öğrenci tablosuna 14-02-1998 doğumlu Hayri KOÇ isimli öğrenciyi 11A sınıfına ekleyen sorguyu yapınız.
1 2 3 4 |
insert into ogrenci(ograd,ogrsoyad,sinif,cinsiyet,dtarih) values('Hayri','KOÇ','11A','E','1998-02-14') |
CURRENT_DATE () işlevinin geçerli sistem tarihini döndüren bir tarih işlevi olduğunu unutmayın. Mevcut tarihi eklemek için kullanabilirsiniz.
Örnek: 10 numaralı öğrenciye 15 numaralı kitabı veren sorguyu yazınız.
1 2 3 4 |
INSERT INTO islem(ogrno,kitapno,atarih) VALUES(10,15,CURRENT_DATE()) |
MySQL INSERT INTO SELECT Kullanımı
INSERT ifadesi ile SELECT ifadesini bir arada kullanabilirsiniz. Bir tablodaki kayıtları başka bir tabloya eklemek için INSERT INTO SELECT yan cümlesini kullanarak yapabilirsiniz. Bu bölümde bu işemi yapan bir kaç tane örneği göreceksiniz.
Örnek: İlk 10 öğrenciyi yazar tablosuna yazar olarak ekleyen sorguyu yapınız.
1 2 3 4 5 6 |
INSERT INTO yazar(yazarad,yazarsoyad) SELECT ograd,ogrsoyad FROM ogrenci LIMIT 0,10 |
Örnek: Öğrenci tablosundaki rastgele 5 kişiyi yazar tablosuna ekleyen sorguyu yapınız.
1 2 3 4 5 6 7 |
INSERT INTO yazar(yazarad,yazarsoyad) SELECT ograd,ogrsoyad FROM ogrenci ORDER BY RAND() LIMIT 5 |
Bu eğiticide, bir tabloya bir veya daha fazla satır eklemek için MySQL INSERT deyiminin nasıl kullanılacağını öğrendiniz.
3 Yorum