Forum

SQL veri sırası hat...
 
Bildirimler
Hepsini Temizle

SQL veri sırası hataları

4 Yazılar
3 Üyeler
0 Likes
1,490 Görüntüleme
(@YasarBurak)
Gönderiler: 2
New Member
Konu başlatıcı
 

Veritabanımda 3 satır veri var sil butonumdan seçtiğim satırı siliyorum fakat yeni ekle butonuyla satır eklerken mesela 3. satırı sildim tekrar ekle butonuyla veri girdiğimde 2 den 4 e geçiyor. Bunu Nasıl önleyebilirim ?

2. sorum veri tabanında da verileri silince sql de de aynı şey oluyor mesela tüm verileri query ile silsem bile tertemiz tabloya girdiğim veri en son girilen satır sayısının bir fazlası olarak gözüküyor.Bunun sebebi nedir ? 

 

//Yeni Hesap karti girişi

            SqlCommand komut = new SqlCommand("insert into OTOMASYON_carikart (CariAdı,CariKodu,Adresi,Telefon,VergiDairesi,VergiNo) values (@p1,@p2,@p3,@p4,@p5,@p6)", bgl.
                baglanti());
    
            komut.Parameters.AddWithValue("@p1", txtcariad.Text);
            komut.Parameters.AddWithValue("@p2", txtcarikod.Text);
            komut.Parameters.AddWithValue("@p3", txtadres.Text);
            komut.Parameters.AddWithValue("@p4", txttelefon.Text);
            komut.Parameters.AddWithValue("@p5", txtvergidaire.Text);
            komut.Parameters.AddWithValue("@p6", txtvergino.Text);
            var ExecuteNonQuery=  komut.ExecuteNonQuery();
            bgl.baglanti().Close();
            MessageBox.Show("Yeni Hesap Sisteme Eklendi!", "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);
            yukle();

 

//ürün silme id ye göre çalışıyor//
            SqlCommand delete = new SqlCommand("Delete From OTOMASYON_carikart where ID=@p1", bgl.baglanti());
            delete.Parameters.AddWithValue("@p1", txtid.Text);
            var ExecuteNonQuery=delete.ExecuteNonQuery();
            MessageBox.Show("Ürün Silindi", "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            yukle();

 

void yukle()
        {
            DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter("Select * From OTOMASYON_carikart", bgl.baglanti());
            da.Fill(dt);
            gridControl1.DataSource = dt;
            
        }

 

yükle fonksiyonunu da ekledim ilgilenirseniz sevinirim .

 
Gönderildi : 15/07/2018 01:10

(@aliuysal)
Gönderiler: 292
Üye
 

Merhabalar;

ID alanınızda sıralamadan bahsediyorsunuz sanırım, Bu alanda auto identity ise söylediğiniz gibi silseniz bile sıradaki numarayı değil silinen kayıttaki numarayı atar,

Siz sıradan numara vermek istiyorsanız Sıra kolonunuzu auto identity yapmazsınız ve sıra numarasınıda siz insert ederek kayıt yaparsınız.

Dijital dönüşüm başlıyor...
RFID Sayım
WinFlow e-Fatura Onay Akış Süreç Yazılımı
Android El Terminali
Elektrikli Araç Şarj Yazılım Platformu
RFID Demirbaş
QrCode Api

 
Gönderildi : 17/07/2018 13:02

(@YasarBurak)
Gönderiler: 2
New Member
Konu başlatıcı
 

Merhabalar;

ID alanınızda sıralamadan bahsediyorsunuz sanırım, Bu alanda auto identity ise söylediğiniz gibi silseniz bile sıradaki numarayı değil silinen kayıttaki numarayı atar,

Siz sıradan numara vermek istiyorsanız Sıra kolonunuzu auto identity yapmazsınız ve sıra numarasınıda siz insert ederek kayıt yaparsınız.

 

 

Çok teşekkürler 

 
Gönderildi : 19/07/2018 18:24

(@semihcicek)
Gönderiler: 24
Eminent Member
 

 2 sorunuzun cevabı olur da  auto identity iptal etmem diyorsanız ve sıfırdan başlamam gerek  (en mantıklısı olan bu) SQL Query bu kodu çalıştırmanız yazdığınız tabloyu identity 1 den başlatıyor.

DBCC CHECKIDENT('tablo',Reseed, 0)

 
Gönderildi : 27/07/2018 17:45

Paylaş: