C# Çıktı tablosu bulunamadı hatası

Centrion1

Centipat
Katılım
23 Ağustos 2024
Mesajlar
101
Çözümler
1
Daha fazla  
Cinsiyet
Erkek


Veri tabanıyla eşleşmeyen hiçbir şey yok ama bu hatayı alıyorum.
 
tablonun ismi veritabanında da aynı mı K büyük olabilir
 
Eki Görüntüle 2439975

Veri tabanıyla eşleşmeyen hiçbir şey yok ama bu hatayı alıyorum.
Sorununun sebebi sorguda belirtilen "kategori" tablosunun veritabanında bulunamamasıdır.
Veritabanında kategori adında tablo olup olmadığını bi kontrol et.
C#:
OleDbCommand komut = new OleDbCommand("INSERT INTO kategori (id, kategori) VALUES ('" + textBox1.Text + "', '" + textBox2.Text + "')", baglanti);
 
Hata mesajının da belirttiği gibi, bu tabloya erişilemiyor.

Attığın screenshot'ta bu isimde bir tablo oluşturduğunu görebiliyorum, ama gerçekten doğru database'i kontrol ettiğinden emin misin? Connection string'de StokTakip21.accdb görüyorum. kategori tablosunun bu database'de olduğundan, ve bu connection string ile bağlanan client'in erişiminin olduğundan tamamen emin misin? Sonunda 21 gibi anlamsız bir sayı olduğundan, yanlış kontrol etmek epey muhtemel.

Bunun dışında, kurduğun yapıda da düzeltmen değiştirmen gerektiğine inandığım kısımlar var.
Yazdığın kodun sürdürülebilir olması için, bazı standartlara uyman gerekiyor.

  • Tartışmalı bir konu olduğundan belirtmek istemezdim ama class isimleri bence kesinlikle CamelCase olması gerekiyor.
  • Bununla beraber, isimlendirmelerini Türkçe değil, İngilizce yapman yararına olacaktır.
  • Tablo isimlendirmende de, tablonun ismi ile, aynı isme sahip kolon kafa karıştırıcı olabilir. Ben olsam burada, tablonun ismini CATEGORIES, kategorinin ismini tutan kolonu da NAME veya VALUE olarak isimlendirirdim.


  • Pratik yapmak için hızlıca yazılmış bir program olduğunun farkındayım, ama yine de ileride referans olması için bahsedeceğim; SQL statement'larını kurmayı string birleştirerek -özellikle kullanıcıdan input alıyorsan- yapmaktan olabildiğince kaçınmalısın. Ya ORM kullanmalı, ya da SQL statement'ını LINQ kullanarak hazırlamalısın.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…