Bu makalede LINQ to SQL ile veritabanına kayıt işlemini inceleyeceğiz.
 
Öncelikle veritabanına kayıt yapmak için katı SQL kodumuzu hatırlayalım.
Elimizde kutuphane isimli bir veritabanı olsun. Bu veritabanı içinde bulunan kitapbilgisi isimli tabloya veri ekleyeceğiz. Öncelikle kitapbilgisi tablosunu kısaca inceleyelim:
linq-to-sql-insert-1

linq-to-sql-insert-1

Uygulamamızda, tabloya kaydetmemiz zorunlu olan adi ve yazari alanlarına veri kaydı yapalım.
Bunun için katı SQL kodu:
INSERT INTO kitapbilgisi(adi,yazari) VALUES(‘Delphi 2005′,’Nihat Demirli’)
şeklinde olacaktır.
Bunu LINQ ile yapmak istersek:
private void Kaydet()
{
        DataClasses1DataContext dc = new DataClasses1DataContext();
        kitapbilgisi kb = new kitapbilgisi
        {
               adi = “Delphi 7”,
               yazari = “Nihat Demirli”
        };
        dc.kitapbilgisis.InsertOnSubmit(kb);
        dc.SubmitChanges();
}
kitapbilgisi kb = new kitapbilgisi. . . : kitapbilgisi isimli tabloya veri eklemesi yapacağımız içinDataClasses1DataContext içine eklediğimiz kitapbilgisi isimli tablo (arka planda oluşturulan aynı isimdeki sınıf)türünden bir değişken oluştururuz ve bu değişkenin içerisine hangi alana hangi veriyi eklemek istediğimizi yazarız. Bu uygulama için sadece iki alan içerisine veri ekleme işlemi yaptık fakat bütün alanları da doldurabiliriz.
linq-to-sql-insert-2

linq-to-sql-insert-2

dc.kitapbilgisis.InsertOnSubmit(kb) : Veritabanında,  parametre olarak atadığı tabloya kayıt ekleme işlemini gerçekleştirir.
dc.SubmitChanges() : Veritabanında insert, update, delete ya da başka bir execute işleminin çalışmasını sağlamaktadır.

 

 

Kodumuzu çalıştırdığımızda veritabanının yapısı aşağıdaki gibi olmaktadır:
linq-to-sql-insert-3

linq-to-sql-insert-3