C# ile Sql Server Veritabanına Kayıt Ekleme

csharp-sqlserver
csharp-sqlserver

Bu yazımda C# ile Sql Server veritabanına kayıt eklemeyi detaylı  olarak  anlatmaya çalışacağım. Tüm veritabanı işlemlerini aynı makale      içerisinde anlatmaktansa parçalara bölerek satır satır detaylarıyla    anlatmanın daha faydalı olacağını düşündüğüm için bu yazımda sadece  veritabanı oluşturma ve kayıt ekleme işlemlerini anlatacağım. Bir çok  yerde hala parametre kullanmadan kayıt ekleme işlemleri  anlatılmaktadır. Bu eski yöntem güvenlik açıklarına sebep olmakta  birlikte kod karmaşası yaratmakta ve anlaşılabilirliği azaltmaktadır.

Örneğimizi müşteri bilgilerini veritabanına kayıt etmek üzerine yapacağız. Öncelikle Sql Server üzerinde

MusteriTakip

isminde bir veritabanı ve veritabanı içerisinde musteriler isminde bir tablo oluşturalım.

musterilertablo
musterilertablo

Tablomuzu oluştururken dikkat etmemiz gereken nokta musterino alanını PrimaryKey olarak belirlemek ve artış miktarını otomatik artacak şekilde ayarlamak. Eğer bu konuda bilginiz yoksa musterino alanını seçtikten sonra Column Properities kısmından ayarları aşağıdaki gibi değiştiriniz. Bu şekilde kaydettiğimiz müşterilere birer birer artacak şekilde bir müşteri numarası atanacak.

columnproperties
columnproperties

Veritabanı ve tablomuzu oluşturduk. Şimdi yeni bir Windows Form Application oluşturarak Formumuzu aşağıdaki gibi dizayn edelim.(Ben projemi TabControl ile tek bir ekranda yaptım ama siz farklı formlar kullanarak yapabilirsiniz.)

musterikaydet
musterikaydet

Formumuzu  da hazırladığımıza göre şimdi kodlarımızı yazamaya başlayabiliriz. Öncelikle aşağıdaki 2 satır projenizde ekli değilse en üste referans olarak eklemeyi unutmayın.

using System.Data;

System.Data;  Ado.Net’in en temel isim alanıdır. Veriyi sembolize eden tablo, satır, sütun, koşul, datatable ve dataset gibi kavramlar bu isim alanı içerisinde yer alırlar.

using System.Data.SqlClient;

Bu isim alanı ise SQL Server için geliştirilmiş sınıfları kullanamaya olanak sağlar.

Kodların nasıl çalıştığıyla ilgili detayları kod aralarına açıklama olarak ekledim


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace M
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

static string conString = "Data Source=MUSTAFA\\ER;Initial Catalog=MusteriTakip;Integrated Security=True";
SqlConnection baglanti = new SqlConnection(conString);

private void btn_Kaydet_Click(object sender, EventArgs e)
{

try

{
if (baglanti.State == ConnectionState.Closed)
baglanti.Open();
// Bağlantımızı kontrol ediyoruz, eğer kapalıysa açıyoruz.

string kayit = "insert into musteriler(tcno,isim,soyisim,telefon,adres) values (@tcno,@isim,@soyisim,@telefon,@adres)";
// müşteriler tablomuzun ilgili alanlarına kayıt ekleme işlemini gerçekleştirecek sorgumuz.

SqlCommand komut = new SqlCommand(kayit, baglanti);
//Sorgumuzu ve baglantimizi parametre olarak alan bir SqlCommand nesnesi oluşturuyoruz.

komut.Parameters.AddWithValue("@tcno", txt_TC.Text);
komut.Parameters.AddWithValue("@isim", txt_Isim.Text);
komut.Parameters.AddWithValue("@soyisim", txt_Soyisim.Text);
komut.Parameters.AddWithValue("@telefon", txt_TelNo.Text);
komut.Parameters.AddWithValue("@adres", txt_Adres.Text);
//Parametrelerimize Form üzerinde ki kontrollerden girilen verileri aktarıyoruz.

komut.ExecuteNonQuery();
//Veritabanında değişiklik yapacak komut işlemi bu satırda gerçekleşiyor.
baglanti.Close();
MessageBox.Show("Müşteri Kayıt İşlemi Gerçekleşti.");
}
catch (Exception hata)
{
MessageBox.Show("İşlem Sırasında Hata Oluştu." + hata.Message);
}
}

Bu yazımda Sql Server veritabanına kayıt ekleme işlemlerini anlattım .

Bir sonraki yazımda görüşmek üzere , bilgiyle kalın …

 

 

Bir Cevap Yazın