none
C#'da 20 Adet tablo var textbox aracılığı ile istediğim tablodan veri çekmek istiyorum.. RRS feed

  • Soru

  • 20 Adet tablom var ve ben örneğin Ayarlar kısmından textbox'a 1 yazdığımda ilk tablodan bilgi getirsin istiyorum. 2 yazdığımda 2 nolu tablodan bilgi getirsin istiyorum. Bunu nasıl yaparım.

    20 tablo için ayrı ayrı sorgu yazmak zahmetli geliyor.

    Tüm tabloları aynı olarak düşünün sadece kayıtlar farklı.


    27 Ocak 2016 Çarşamba 20:04

Tüm Yanıtlar

  • Database Kısmına Procedure yazarsın ve parametre olarakda tablo ismini alırsın c# tarafından da procedure 'e tablo ismini gönderirsin istediğin tablodan çok rahatlıkla bilgi çekebilirsin
    27 Ocak 2016 Çarşamba 20:13
  • Merhaba,

    Tam anlayamadım. Yazı yazarken tablodaki verilere göre texti otomatik doldurmasını mı istiyorsunuz?

    27 Ocak 2016 Çarşamba 20:18
  • Merhaba,

    Tam anlayamadım. Yazı yazarken tablodaki verilere göre texti otomatik doldurmasını mı istiyorsunuz?


    Şöyle anlatayım..

    Örneğin 2015 yılı için fiyatları tutan Tablo_15 den barkod aracılığı ile ürün fiyatı çekiyorum.

    2016 yılında ise Tablo_16 dan barkod aracılığı ile fiyat çekmem gerekecek. Programda her yıl fiyat tablosu adı değişiyor.

    Tek bir sorgu yazdım fiyatı alabiliyorum ancak gelecek yıl sorguyu değiştirmek gerekecek.

    Sorgu içindeki tablo adını nasıl güncelleyebilirim.

     Ayarlar diye Form oluşturdum buradan dönem numarasını örneğin 16 olarak değiştireceğim ve tablo_16 dan fiyatı çekeceğim. 15 yazarsam da 15 numaralı tablodan fiyat gelsin istiyorum

    Teşekkürler..

    27 Ocak 2016 Çarşamba 20:47
  • Mevcut bulunduğunuz yılı neden bilgisayarın tarihinden almıyorsunuz?

    Yıla göre işlem yaparsınız

    SELECT year( getdate() )

    var yil = DateTime.Now.Year;

    27 Ocak 2016 Çarşamba 21:21
  • Neden bu şekilde bir yapı tasarlamak zorunda kaldınız?

    -

    28 Ocak 2016 Perşembe 08:33
  • Merhabalar 

    CREATE PROC SPGET_FIYAT
    (
    @TableName NVARCHAR(100)=NULL
    )
    as
    DECLARE @Query NVARCHAR(1000)='select * from '+@TableName
    EXEC(@Query)

    bunun gibi bir procedure tasarlarsan eğer tablo isnine göre istediğin tablodan değer çekebilirsin


    28 Ocak 2016 Perşembe 11:58
  • Textbox'a 1,2 yazmaktansa bir radiolist'e veya tabloya veritabanınızdaki tabloları listeletin. Tıklandığında parametre olarak @TABLOAD diye Store procedure'ye gönderirseniz size o tablonun kayıtları gelir. 


    ALTER PROCEDURE [dbo].[NtabloVerileriGetir]
    @TABLOAD Varchar(250),
    AS
    BEGIN
    SET NOCOUNT ON;

    DECLARE @cmd AS NVARCHAR(max)
    SET @cmd = N'SELECT * FROM ' + @TABLOAD + '

    EXEC sp_executesql @cmd 
    END





    28 Ocak 2016 Perşembe 15:36
  • Neden bu şekilde bir yapı tasarlamak zorunda kaldınız?

    -

    Logo Muhasebe programlarını biliyorsunuzdur. Her yıl devir yapılınca fiyatların bulunduğu tablo da firma numarasına göre tekrar oluşuyor. Ve fiyatlarında yeni döneme göre yeni tablodan çekilmesi gerekiyor.

    C# 'da daha yeni olduğum için bir çalışma yaptım ve sonuç aldım ancak gelecek yıllarda sorguyu otomatik olarak değiştirmem gerekeceğinden buradan sormak istedim.


    28 Ocak 2016 Perşembe 20:29