Ana içeriğe atla

İD ye göre işlemler C# ve Class örnekleri ile Birlikte

*****************************************************************************

DbHelper.cs adında bir sınıf ile Insert, Update, Delete, GetId, SelectAll işlemlerini kolayca yapabilirsiniz.
SCOPE_IDENTITY() kullanarak son eklenen kaydın ID’sini çekme örneği var.
✅ Bu ID’yi Label veya TextBox’a yazdırabilir, Update veya Delete için tekrar kullanabilirsiniz.
DataGridView ile tüm verileri listeleme örneği de dahil.

*****************************************************************************

 // ✅ DbHelper.cs

using System;

using System.Collections.Generic;

using System.Data;

using System.Data.SqlClient;


public static class DbHelper

{

    private static string connectionString = @"Data Source=.\SQLEXPRESS;Initial Catalog=YourDatabase;Integrated Security=True";


    public static object InsertAndGetId(string query, Dictionary<string, string> parameters)

    {

        using (SqlConnection connection = new SqlConnection(connectionString))

        using (SqlCommand cmd = new SqlCommand(query + "; SELECT SCOPE_IDENTITY();", connection))

        {

            foreach (var p in parameters)

                cmd.Parameters.AddWithValue("@" + p.Key, p.Value);


            connection.Open();

            return cmd.ExecuteScalar();

        }

    }


    public static int Update(string query, Dictionary<string, string> parameters)

    {

        using (SqlConnection connection = new SqlConnection(connectionString))

        using (SqlCommand cmd = new SqlCommand(query, connection))

        {

            foreach (var p in parameters)

                cmd.Parameters.AddWithValue("@" + p.Key, p.Value);


            connection.Open();

            return cmd.ExecuteNonQuery();

        }

    }


    public static int Delete(string query, Dictionary<string, string> parameters)

    {

        using (SqlConnection connection = new SqlConnection(connectionString))

        using (SqlCommand cmd = new SqlCommand(query, connection))

        {

            foreach (var p in parameters)

                cmd.Parameters.AddWithValue("@" + p.Key, p.Value);


            connection.Open();

            return cmd.ExecuteNonQuery();

        }

    }


    public static object GetId(string query, Dictionary<string, string> parameters)

    {

        using (SqlConnection connection = new SqlConnection(connectionString))

        using (SqlCommand cmd = new SqlCommand(query, connection))

        {

            foreach (var p in parameters)

                cmd.Parameters.AddWithValue("@" + p.Key, p.Value);


            connection.Open();

            return cmd.ExecuteScalar();

        }

    }


    public static DataTable SelectAll(string query)

    {

        using (SqlConnection connection = new SqlConnection(connectionString))

        using (SqlDataAdapter adapter = new SqlDataAdapter(query, connection))

        {

            DataTable dt = new DataTable();

            adapter.Fill(dt);

            return dt;

        }

    }

}

***********************************************************************

// ✅ Form1.cs örnek kullanım

***********************************************************************

// INSERT ve ID çekme

var insertParams = new Dictionary<string, string>

{

    { "marka", txt_marka.Text },

    { "viskozite1", txt_vis1.Text },

    { "viskozite2", txt_vis2.Text }

};


object id = DbHelper.InsertAndGetId(

    "INSERT INTO marka_yaglari (marka, viskozite1, viskozite2) VALUES (@marka, @viskozite1, @viskozite2)",

    insertParams);


lbl_id.Text = id.ToString();


// SİLME

var deleteParams = new Dictionary<string, string>

{

    { "id", lbl_id.Text }

};


DbHelper.Delete("DELETE FROM marka_yaglari WHERE id = @id", deleteParams);


// GÜNCELLEME

var updateParams = new Dictionary<string, string>

{

    { "marka", txt_marka.Text },

    { "viskozite1", txt_vis1.Text },

    { "viskozite2", txt_vis2.Text },

    { "id", lbl_id.Text }

};


DbHelper.Update(

    "UPDATE marka_yaglari SET marka = @marka, viskozite1 = @viskozite1, viskozite2 = @viskozite2 WHERE id = @id",

    updateParams);


// LİSTELEME

DataTable dt = DbHelper.SelectAll("SELECT * FROM marka_yaglari");

dataGridView1.DataSource = dt;


Bu blogdaki popüler yayınlar

FOREGIN KEY ve INNER JOIN ile ilişkili tablo oluşturma Örneği

--1)DataBase oluşturma Sorgusu --CREATE DATABASE Join_Alistirma; --GO --USE Join_Alistirma; --GO --2)musteri Tablosu oluşturma --CREATE TABLE musteri ( --    musteri_ID INT IDENTITY(1,1) PRIMARY KEY, --    adi_soyadi NVARCHAR(100) NOT NULL, --    telefon NVARCHAR(20) NOT NULL --); ---3)araclar Tablosunu Oluştur (FOREIGN KEY ile) --CREATE TABLE araclar ( --    id INT IDENTITY(1,1) PRIMARY KEY, --    musteri_ID INT NOT NULL, --    plaka NVARCHAR(20) NOT NULL, --    marka NVARCHAR(50), --    model NVARCHAR(50), --    yil INT, --    FOREIGN KEY (musteri_ID) REFERENCES musteri(musteri_ID) --); ----------------------------------------------------------------------------- ----NOT  --musteri_ID → musteri tablosuyla bağlantılı olacak. --plaka, marka, model, yil alanları araç bilgilerini tutacak. ----------------------------------------------------------------------------- ---4)Tablolara muste...

Private Void Metod

 namespace Metotlar {     public partial class Form1 : Form     {         public Form1()         {             InitializeComponent();         }         //Parametre Almayan Değer Döndürmeyen Metot         //Değer döndürmeyen metot tanımlarken Başa Void yazılır         //Tekrar tekrar aynı kod parçasını yazmaya gerek kalmaz Metot adını istediğinde çağarabilirsin         //void : private void olan metot başka yerden erişelemez         //public void olanlar ise erişime açık (dışarıdan görülebilen) anlamına gelir         //Örnek : MesayYaz Metotu: Çağrıldığı yerde ekrana bir mesaj veren metot yazalım         void MesajYaz()          {             MessageBox.Show("Merhaba Ben Parametresiz...