Ana içeriğe atla

C# Forms ve ADO.NET ile SQL Server 2022'de SQLConnection bağlantısı ile INSERT İşlemi

// SQL bağlantı yolu için sistem paketinin yüklenmesi

using System;

using System.Data.SqlClient;

using System.Windows.Forms;


namespace VeriTabanıTestProjesi

{

    public partial class Form1 : Form

    {

        // SQL bağlantı nesnesinin tanımlanması

        SqlConnection sqlBaglanti = new SqlConnection(@"Data Source=DESKTOP-0B1GIRL\SQLEXPRESS;Initial Catalog=TestVT;Integrated Security=True");


        public Form1()

        {

            InitializeComponent();

        }


        private void button1_Click(object sender, EventArgs e)

        {

            // Veri Tabanında oluşabilecek hataların yakalanması

            try

            {

                // SQL bağlantısının açılması

                sqlBaglanti.Open();


                // Parametreli SQL komutu oluşturma

                // Parametre kullanarak SQL Injection riskini azaltmak için Parametre @p kullanma:

                //Parametreli Sorgu Kullanımı: SQL Injection riskini ortadan kaldırmak için;

                //@p1, @p2, @p3, @p4 gibi parametreler kullanıldı.

                //Personel Tablosundaki Kolon İsimleri

                string sqlCumlesi = "INSERT INTO Personel (PersonelNo, Ad, Soyad, Adres) VALUES (@p1, @p2, @p3, @p4)";

                SqlCommand sqlCommand = new SqlCommand(sqlCumlesi, sqlBaglanti);


                // Parametre Verilerinin işlenmesi


                sqlCommand.Parameters.AddWithValue("@p1", textBox1.Text);

                sqlCommand.Parameters.AddWithValue("@p2", textBox2.Text);

                sqlCommand.Parameters.AddWithValue("@p3", textBox3.Text);

                sqlCommand.Parameters.AddWithValue("@p4", textBox4.Text);


                // SQL komutunun çalıştırılması ve verinin veri tabanına eklenmesi

                sqlCommand.ExecuteNonQuery();

                MessageBox.Show("Personel Verileri Veri Tabanına Kayıt Edilmiştir.");


                // TextBox'ların temizlenmesi

                textBox1.Clear();

                textBox2.Clear();

                textBox3.Clear();

                textBox4.Clear();

            }

            catch (Exception ex)

            {

                // Veri tabanı bağlantı hatasının kullanıcıya gösterilmesi

                //hata mesajını göstermek için ex.Message

                MessageBox.Show("Veri Tabanı Bağlantı Hatası Oluştu: " + ex.Message);

            }

            finally

            {

                // SQL bağlantısının kapatılması

                if (sqlBaglanti != null)

                    sqlBaglanti.Close();

            }

        }

    }

}


#Veri Tabanı Görseli :



Kodun Yapısı :

//Veri tabanı bağlantı
SqlConnection sqlBaglanti = new SqlConnection (@"");

//Verilerin ve işlemlerinin uygulanması
try 
{
    //Veri tabanı bağlantısını açma
    sqlBaglanti.Open();

    //Tablo başlıklıklarının parametre olarak yazılması
    string sqlCumlesi = "INSERT INTO Personel (VT Başlıklar) VALUES (@parametreler)";
    SqlCommand sqlCommand = new SqlCommand(sqlCumlesi, sqlBaglanti);

    //Form araçlarının tanıtılması
    sqlCommand.Parameters.AddWithValue("@p1", textBox1.Text);

    //Veri tabanında kayıt ekleme silme düzenleme işleminin yapılması
    sqlCommand.ExecuteNonQuery();
}
//Hataların yakalanması
catch (Exception ex) 
{
    MessageBox.Show("Veri Tabanı Bağlantı Hatası Oluştu: " + ex.Message);
}

//İşlemlerin sonunda: Finalde ve Hata Durumunda Bağlantıyı kapatması
finally 
{
    // SQL bağlantısının kapatılması

    if (sqlBaglanti != null)

        sqlBaglanti.Close();
}

Visual Stduio Güncellendi konu ile ilgili C# UPDATE bakınız.

Yorumlar