SQL Insert ifadesini mevcut tablomuza yeni veri eklemek için kullanıyoruz. SQL Insert ifadesi ile yeni veri eklerken string ifadeler tırnak karakteri arasına yazılır, sayısal veriler için tırnak karakteri kullanılmadan doğrudan yazılabilir.
INSERT INTO tablo_adi VALUES (deger1,deger2,deger3,...)
Kullanım şeması yukarıdaki gibidir. INSERT INTO ifadesinden sonra yeni verinin ekleneceği tablonun adını belirtiyoruz. VALUES ifadesinden sonra ise belirttiğimiz tabloda alanlara sırası ile hangi verilerin girileceğini belirliyoruz. Burada dikkat edilmesi gereken nokta verilerin sırasının tablodaki sütunlar ile aynı olmasıdır. Tablodaki sütun sayısı kadar veri girilmesi zorunludur.
Aşağıdaki şema üzerinden sütunlar ile veri arasındaki ilişkiyi daha iyi görebilirsiniz. Bu kullanımın birinci şeklidir.
İkinci kullanım şeklinde ise sql insert ifadesinde tablodaki sütunların isimleri belirtilir. . Aşağıdaki örnek üzerinden inceleyelim.
INSERT INTO personel (personel_id,personel_adi,personel_soyadi,personel_gorevi) VALUES (7, 'İhsan', 'Varol', 'Tekniker')
INSERT INTO ifadesinden yeni verinin ekleneceği tablo isminin yanı sıra tablodaki sütunların ismi parantez içerisinde belirtilir. VALUES ifadesinden sonra ise eklenecek veriler girilir. Burada yine sütunların ve verilerin sırası uyuşmalıdır. Bu kullanımda tablonun tüm sütunlarına veri girişi şartı yoktur. Sadece veri girişi yapılacak sütun ismi yazılır.
Dikkat eğer NOT NULL veya Primary Key olan sütunları yazılması zorunludur aksi halde hata sorgu çalışmayacaktır.
Yukarıdaki örnek şemaya göre verileri ekleyen sorguyu aşağıdan inceleyebilirsiniz
INSERT INTO personel (personel_id,personel_adi,personel_soyadi,personel_gorevi) VALUES (1,'Hasan','Coş','Şef') INSERT INTO personel (personel_id,personel_adi,personel_soyadi,personel_gorevi) VALUES (2,'Fatma','Günaydın','Sekreter') INSERT INTO personel (personel_id,personel_adi,personel_soyadi,personel_gorevi) VALUES (3,'Rıza','Kaptan','Boyacı') INSERT INTO personel VALUES (4,'Mahmut','Coş','Boyacı') INSERT INTO personel VALUES (5,'Hüseyin','Coş','Tekniker')
Personel tablomuza sadece ad ve soyad bilgilerini içeren veriyi SQL sorgusu ile ekleyelim ve birinci kullanım şekli ile ikinci kullanım şekli arasındaki farkı görelim.
INSERT INTO personel (personel_id,personel_adi,personel_soyadi) VALUES (8,'Aslan','Akbey')
Yukarıdaki örneğimizde personel id alanı primary key (birincil anahtar) olduğu için değer girmek zorundayız eğer girilmez ise hata verecektir. Personel idsinden sonra adı ve soyadı bilgilerini yazıyoruz. Personel görevi zorunlu alan olmadığı için onu yazmıyoruz. Böylece sadece ad soyad bilgileri eklenmiş oluyor.
Tabloya verileri ekledikten sonra Select ifadesi ile tekrar listeleyelim ve tablodaki verilerin son halini görelim.
SELECT * FROM personel
Tablomuzdaki verilerin son halinde veri listemiz aşağıdaki gibi olacaktır. En son sorgumuzda personel görevi belirtmediğimiz için 8 numaralı kayıtta personel görevi boştur.
SELECT ifadesinin daha detaylı kullanım şekilleri için SQL Select Kullanımı başlıklı yazıma göz atabilirsiniz.
Eklenen verileri değiştirmek mümkündür. Bunun için SQL Update ifadesi kullanılır. SQL Update Kullanımına göz atabilirsiniz.
Eklenen verileri delete ifadesi ile silmek mümkündür. Delete ifadesinin detaylı kullanımı için SQL Delete Kullanımı başlıklı yazıma göz atabilirsiniz.