C# ile SQL Server Veritabanına Ekleme, Silme, Güncelleme
Bu yazımızda C# ile SQL Server Veritabanına Ekleme, Silme, Güncelleme işlemlerini inceleyeceğiz. Önce SQL Server Management Studio'yu açarak veritabanı oluşturunuz. Bu yazımızda SQL Server ile Veritabanı oluşturma adımlarına değinmeyeceğiz, SQL komutlarını da anlatmayacağız. SQL Server bölümünden ilgili anlarımları inceleyebilirsiniz.
Microsoft SQL Server'da sirket isimli bir veritabanı oluşturup içinde musteriID, ADI, SOYADI, EPOSTA, TELEFON alanlarından oluşan bir tblmusteri tablosu oluşturunuz. Burada musteriID alanı INTEGER yani tam sayı tipinde, diğer alanları VARCHAR(50) yapabilirsiniz.
Burada metin kutularına (TextBox nesnelerine) sırasıyla txtID, txtAdi, txtSoyadi, txtTelefon, txtEposta isimlerini verdik. Butonlara ise sırasıyla soldan sağa btnYeni, btnKaydet, btnDuzelt, btnSil, btnListele isimlerini verdik. DataGridView nesnemizin ismi de DataGridView1 olarak bırakıldı.
//Veritabanına bağlantı sağlayan metod, burada Data Source kısmında nokta(.) konmuştur, veritabanı yerel bilgisayarda değilse IP adresi yazılmalıdır. Ayrıca Microsoft SQL Server Management Studio'da Object Explorer penceresinde yazan ismi kullanabilirsiniz. Aşağıda görüldüğü gibi bende DEVELOPERBIL yazıyor, nokta yerine onu da kullanabilirim.
//SQL Ekleme, Silme, Güncelleme kodlarını çalıştıran metod
//DataGridView nesnesinin içeriğini güncelleyen metod
//Listele butonuna tıklayınca DataGridView nesnesi içeriği yenileniyor
//Sil butonuna tıklayınca çalışan metod
//Düzelt butonuna tıklayınca UPDATE SQL ile güncelleme yapılıyor
//Yeni kayıt eklenirken metin kutularının boşaltılması gerekiyor
Mutlu kodlamalar,
Oğuzhan TAŞ
Mayıs 2022
Microsoft SQL Server'da sirket isimli bir veritabanı oluşturup içinde musteriID, ADI, SOYADI, EPOSTA, TELEFON alanlarından oluşan bir tblmusteri tablosu oluşturunuz. Burada musteriID alanı INTEGER yani tam sayı tipinde, diğer alanları VARCHAR(50) yapabilirsiniz.
Burada metin kutularına (TextBox nesnelerine) sırasıyla txtID, txtAdi, txtSoyadi, txtTelefon, txtEposta isimlerini verdik. Butonlara ise sırasıyla soldan sağa btnYeni, btnKaydet, btnDuzelt, btnSil, btnListele isimlerini verdik. DataGridView nesnemizin ismi de DataGridView1 olarak bırakıldı.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
//Veritabanı bağlantısı için aşağıdaki namespace'ler gerekli
using System.Data; //SQL Server Veritabanı Bağlantısı için gerekli
using System.Data.SqlClient; //SQL Server Veritabanı Bağlantısı için gerekli
namespace Veritabani_Musteri
{
public partial class Form1 : Form
{
string baglantiStr;
SqlConnection baglanti;
SqlCommand komut;
SqlDataAdapter adaptor;
//Veritabanına bağlantı sağlayan metod, burada Data Source kısmında nokta(.) konmuştur, veritabanı yerel bilgisayarda değilse IP adresi yazılmalıdır. Ayrıca Microsoft SQL Server Management Studio'da Object Explorer penceresinde yazan ismi kullanabilirsiniz. Aşağıda görüldüğü gibi bende DEVELOPERBIL yazıyor, nokta yerine onu da kullanabilirim.
public void veritabaniBaglan(){
try
{
baglantiStr = @"Data Source=.;Initial Catalog=sirket;Trusted_Connection=True;";
baglanti = new SqlConnection(baglantiStr);
if (baglanti.State == ConnectionState.Open)
baglanti.Close();
baglanti.Open();
}
catch
{
MessageBox.Show("Veritabanına bağlantı kurulamadı");
}
}
//SQL Ekleme, Silme, Güncelleme kodlarını çalıştıran metod
private void SQLCalistir(string sql, string islem)
{
veritabaniBaglan();
komut = new SqlCommand(sql, baglanti);
try
{
komut.ExecuteNonQuery();
MessageBox.Show(islem + " işlemi başarıyla gerçekleşti");
}
catch (SqlException hata)
{
MessageBox.Show(hata.Message.ToString());
}
}
public Form1()
{
InitializeComponent();
}
//Kayıt Ekle butonuna tıklayınca ekleyen metod
private void btnEkle_Click(object sender, EventArgs e)
{
string adi, soyadi, telefon, eposta;
adi= txtAdi.Text;
soyadi = txtSoyadi.Text;
telefon = txtTelefon.Text;
eposta = txtEposta.Text;
string sql ="INSERT INTO tblmusteri(ADI, SOYADI, EPOSTA, TELEFON)"+
" VALUES('"+adi+"','"+soyadi+"','"+telefon+"','"+eposta+"')";
// MessageBox.Show(sql);
SQLCalistir(sql, "Ekleme");
verileriGetir();
}
//DataGridView nesnesinin içeriğini güncelleyen metod
public void verileriGetir()
{
veritabaniBaglan();
DataTable dt = new DataTable();
adaptor = new SqlDataAdapter("SELECT * FROM tblmusteri", baglanti);
adaptor.Fill(dt);
dataGridView1.DataSource = dt;
baglanti.Close();
}
//Listele butonuna tıklayınca DataGridView nesnesi içeriği yenileniyor
private void btnListele_Click(object sender, EventArgs e)
{
verileriGetir(); //Yenile
}
//Sil butonuna tıklayınca çalışan metod
private void btnSil_Click(object sender, EventArgs e)
{
if (dataGridView1.SelectedCells.Count > 0)
{
int secilenIndeks = dataGridView1.SelectedCells[0].RowIndex;
DataGridViewRow secilenSatir = dataGridView1.Rows[secilenIndeks];
string silinecek = Convert.ToString(secilenSatir.Cells["musteriID"].Value);
//MessageBox.Show(silinecek);
string sql = "DELETE FROM tblmusteri WHERE musteriID=" + silinecek;
SQLCalistir(sql, "Silme");
verileriGetir();
}
}
//Kayıt düzelmek için DataGridView içinde ilgili satır seçilince metin kutularına aktarılıyor
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
int secilenIndeks = dataGridView1.SelectedCells[0].RowIndex;
DataGridViewRow secilenSatir = dataGridView1.Rows[secilenIndeks];
txtAdi.Text = Convert.ToString(secilenSatir.Cells["ADI"].Value);
txtSoyadi.Text = Convert.ToString(secilenSatir.Cells["SOYADI"].Value);
txtEposta.Text = Convert.ToString(secilenSatir.Cells["EPOSTA"].Value);
txtTelefon.Text = Convert.ToString(secilenSatir.Cells["TELEFON"].Value);
txtID.Text = Convert.ToString(secilenSatir.Cells["musteriID"].Value);
}
//Form ilk açılınca DataGridView içeriği gösteriliyor
private void Form1_Load(object sender, EventArgs e)
{
verileriGetir();
}
//Düzelt butonuna tıklayınca UPDATE SQL ile güncelleme yapılıyor
private void btnDuzelt_Click(object sender, EventArgs e)
{
string adi, soyadi, telefon, eposta, ID;
adi= txtAdi.Text;
soyadi = txtSoyadi.Text;
telefon = txtTelefon.Text;
eposta = txtEposta.Text;
ID = txtID.Text;
if (ID != "")
{
string sql = "UPDATE tblmusteri set " +
"ADI='" + adi + "', SOYADI='" + soyadi + "',TELEFON='" + telefon + "'," +
"EPOSTA='" + eposta + "' WHERE musteriID=" + ID;
SQLCalistir(sql, "Düzeltme");
verileriGetir();
}
else
{
MessageBox.Show("Lütfen düzeltilecek kaydı seçiniz");
}
}
//Yeni kayıt eklenirken metin kutularının boşaltılması gerekiyor
private void btnBosalt_Click(object sender, EventArgs e)
{
txtAdi.Text = "";
txtSoyadi.Text = "";
txtTelefon.Text = "";
txtEposta.Text = "";
txtID.Text = "";
}
}
}
Bu yazımızda SQL Server veritabanına C# Formlar üzerinden Ekleme, Silme, Güncelleme ve DataGridView nesnesi üzerinde kayıtları listeleme işlemini inceledik. Bu kodları anlamak için C# bölümündeki örneklei incelemeli SQL Komutlarını tam olarak anlamalısınız. İlgili bölümlere bakabilirsiniz, hepsini anlattım.
Bu yazımızda SQL Server veritabanına C# Formlar üzerinden Ekleme, Silme, Güncelleme ve DataGridView nesnesi üzerinde kayıtları listeleme işlemini inceledik. Bu kodları anlamak için C# bölümündeki örneklei incelemeli SQL Komutlarını tam olarak anlamalısınız. İlgili bölümlere bakabilirsiniz, hepsini anlattım.
Mutlu kodlamalar,
Oğuzhan TAŞ
Mayıs 2022
Dil Değiştir(Change Language)
Kategoriler
- Csharp(58)
- Csharp Formlar(23)
- Web Tasarım(9)
- CSS(27)
- JavaScript(37)
- PHP(50)
- Laravel(3)
- ASP.net(38)
- Excel(15)
- Güvenlik(4)
- E-Ticaret(3)
- Kariyer(5)
- SQL Server(29)
- MySQL(16)
- Linux(17)
- MacOSX(8)
- Ayarlar(12)
- Bilgisayar Ağları(3)
- Symfony(1)
- Teknoloji(7)
- VBS(1)
- Arduino(6)
- RaspberryPi(1)
- Algoritmalar(15)
- HTML(3)
- Python(2)
- Bash Script(7)
- C Programlama(10)
- Flutter - Dart(11)
- Bootstrap(1)
En çok Okunan 18 Makale
- :: Excelde EĞER Fonksiyonu Kullanımı...
- :: Csharp ile Access Veritabanı Bağlan...
- :: SQL nedir, Temel SQL Komutları nele...
- :: Hangi Linux Dağıtımı?
- :: OSX İşletim Sistemine PHP, MySQL, A...
- :: Excel Hesap tablosunda EĞERSAY Fonk...
- :: PHP dilini kullanarak MySQLi tekniğ...
- :: Excel Hesap tablosunda ÇOKETOPLA Fo...
- :: Excel Hesap tablosunda ETOPLA Fonks...
- :: Excel Hesap tablosunda ÇOKEĞERSAY F...
- :: Hangi Programlama Dilini Öğrenmeliy...
- :: Mac Bilgisayarınıza Windows 7 Yükle...
- :: PHP ile Basit Dosya Yükleme
- :: C# Programlama Dili ile İlgili Örne...
- :: Excel hücrelerinde yıldız koyarak b...
- :: PHP Dili kullanarak MySQLi Tekniği ...
- :: PhpMyAdmin Şifresi Nasıl Değiştiril...
- :: Hangisi acaba, PHP mi ASP.NET mi ?