C# DataGridView Veritabanına Ekleme
Giriş
C# DataGridView, verileri tablo biçiminde görüntülemek ve düzenlemek için kullanılan güçlü bir kullanıcı arayüzü (UI) bileşenidir. Veritabanı bağlantısı ile birleştirildiğinde, kullanıcıların verileri kolayca veritabanına eklemelerine olanak tanır. Bu makale, C# DataGridView kullanarak veritabanına nasıl veri ekleneceğini adım adım açıklayacaktır.
Veritabanı Bağlantısı Oluşturma
İlk adım, veritabanına bir bağlantı oluşturmaktır. Bu, System.Data.SqlClient
ad alanını kullanarak yapılabilir:
“`csharp
using System.Data.SqlClient;
// Bağlantı dizesini oluşturun
string connectionString = @”Data Source=localhost;Initial Catalog=VeritabaniAdi;Integrated Security=True”;
// Bağlantı nesnesini oluşturun
SqlConnection connection = new SqlConnection(connectionString);
“`
DataGridView’i Veritabanına Bağlama
Veritabanına bağlandıktan sonra, DataGridView’i veritabanına bağlamanız gerekir. Bu, DataSource
özelliğini kullanarak yapılabilir:
csharp
// DataGridView'i veritabanına bağlayın
dataGridView1.DataSource = connection.GetSchema("Tables");
Yeni Satır Ekleme
DataGridView’e yeni bir satır eklemek için Rows.Add()
yöntemini kullanabilirsiniz:
csharp
// DataGridView'e yeni bir satır ekleyin
dataGridView1.Rows.Add();
Hücre Değerlerini Ayarlama
Yeni eklenen satırdaki hücre değerlerini, Cells
özelliğini kullanarak ayarlayabilirsiniz:
csharp
// Hücre değerlerini ayarlayın
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Ad"].Value = "John";
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Soyad"].Value = "Doe";
Verileri Veritabanına Kaydetme
Değişiklikleri veritabanına kaydetmek için DataAdapter
ve SqlCommand
nesnelerini kullanmanız gerekir:
“`csharp
// DataAdapter nesnesini oluşturun
SqlDataAdapter dataAdapter = new SqlDataAdapter();
// Ekleme komutunu oluşturun
SqlCommand insertCommand = new SqlCommand(“INSERT INTO TabloAdi (Ad, Soyad) VALUES (@Ad, @Soyad)”, connection);
insertCommand.Parameters.AddWithValue(“@Ad”, dataGridView1.Rows[dataGridView1.Rows.Count – 1].Cells[“Ad”].Value);
insertCommand.Parameters.AddWithValue(“@Soyad”, dataGridView1.Rows[dataGridView1.Rows.Count – 1].Cells[“Soyad”].Value);
// DataAdapter’a komutları ekleyin
dataAdapter.InsertCommand = insertCommand;
// Değişiklikleri veritabanına kaydedin
dataAdapter.Update(connection.GetSchema(“Tables”));
“`
Örnek Kod
Aşağıdaki kod örneği, C# DataGridView kullanarak veritabanına nasıl veri ekleneceğini göstermektedir:
“`csharp
using System;
using System.Data;
using System.Data.SqlClient;
using System.Windows.Forms;
namespace DataGridViewVeritabaniEkleme
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// Veritabanı bağlantısı oluşturun
string connectionString = @"Data Source=localhost;Initial Catalog=VeritabaniAdi;Integrated Security=True";
SqlConnection connection = new SqlConnection(connectionString);
// DataGridView'i veritabanına bağlayın
dataGridView1.DataSource = connection.GetSchema("Tables");
}
private void button1_Click(object sender, EventArgs e)
{
// Yeni satır ekleyin
dataGridView1.Rows.Add();
// Hücre değerlerini ayarlayın
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Ad"].Value = "John";
dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Soyad"].Value = "Doe";
// Değişiklikleri veritabanına kaydedin
SqlDataAdapter dataAdapter = new SqlDataAdapter();
SqlCommand insertCommand = new SqlCommand("INSERT INTO TabloAdi (Ad, Soyad) VALUES (@Ad, @Soyad)", connection);
insertCommand.Parameters.AddWithValue("@Ad", dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Ad"].Value);
insertCommand.Parameters.AddWithValue("@Soyad", dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Soyad"].Value);
dataAdapter.InsertCommand = insertCommand;
dataAdapter.Update(connection.GetSchema("Tables"));
// Kullanıcıya mesaj gösterin
MessageBox.Show("Veriler veritabanına eklendi.");
}
}
}
“`
Faydalı Kaynaklar
Önemli Not: Bu yazı Google Gemini yapay zekası tarafından otomatik olarak oluşturulmuştur ve hatalı bilgiler içerebilir. Düzeltmek için iletişim sayfamızdaki formdan veya yine iletişim sayfamızda bulunan eposta adresi yoluyla bizimle iletişime geçebilirsiniz. Hata varsa hemen düzeltilmektedir.