.NET Framework uygulamalarında TableAdapters oluşturma ve yapılandırma
Not
Veri kümeleri ve ilgili sınıflar, uygulamaların veritabanıyla bağlantısı kesilirken uygulamaların bellekteki verilerle çalışmasını sağlayan 2000'lerin başlarındaki eski .NET Framework teknolojileridir. Bunlar özellikle kullanıcıların verileri değiştirmesine ve değişiklikleri veritabanında kalıcı hale getirebilmesine olanak tanıyan uygulamalar için kullanışlıdır. Veri kümelerinin çok başarılı bir teknoloji olduğu kanıtlanmış olsa da, yeni .NET uygulamalarının Entity Framework Core kullanmasını öneririz. Entity Framework, tablosal verilerle nesne modelleri olarak çalışmak için daha doğal bir yol sağlar ve daha basit bir programlama arabirimine sahiptir.
TableAdapter, uygulamanızla veritabanı arasındaki iletişimi sağlar. Veritabanına bağlanır, sorgular veya saklı yordamlar çalıştırır ve yeni bir veri tablosu döndürür veya var olan DataTable bir tabloyu döndürülen verilerle doldurur. TableAdapters, güncelleştirilmiş verileri uygulamanızdan veritabanına da gönderebilir.
TableAdapters, aşağıdaki eylemlerden birini gerçekleştirdiğinizde sizin için oluşturulur:
Veritabanı nesnelerini Sunucu Gezgini'ndenVeri Kümesi Tasarım Aracı sürükleyin.
Veri Kaynağı Yapılandırma Sihirbazı'nı çalıştırın ve Veritabanı veya Web Hizmeti veri kaynağı türünü seçin.
Ayrıca yeni bir TableAdapter oluşturabilir ve Toolbox'tan Bir TableAdapter'ı Veri Kümesi Tasarım Aracı yüzeyindeki boş bir bölgeye sürükleyerek bunu bir veri kaynağıyla yapılandırabilirsiniz.
TableAdapters'a giriş için bkz . TableAdapters kullanarak veri kümelerini doldurma.
Not
Bilgisayarınız bu makaledeki Bazı Visual Studio kullanıcı arabirimi öğeleri için farklı adlar veya konumlar gösterebilir. Visual Studio'nun farklı bir sürümünü veya farklı ortam ayarlarını kullanıyor olabilirsiniz. Daha fazla bilgi için bkz . IDE'yi kişiselleştirme.
TableAdapter Yapılandırma Sihirbazı'nı kullanma
TableAdapter Yapılandırma Sihirbazı'nı çalıştırarak TableAdapter'ları ve ilişkili DataTable'larını oluşturun veya düzenleyin. Mevcut bir TableAdapter'ı, Veri Kümesi Tasarım Aracı sağ tıklayarak yapılandırabilirsiniz.
Veri Kümesi Tasarım Aracı odaktayken Araç Kutusu'ndan yeni bir TableAdapter sürüklerseniz, sihirbaz başlatılır ve TableAdapter'ın hangi veri kaynağına bağlanacağını belirtmenizi ister. Sonraki sayfada sihirbaz, veritabanıyla iletişim kurmak için sql deyimleri veya saklı yordamlar olmak üzere ne tür komutlar kullanması gerektiğini sorar. (Zaten bir veri kaynağıyla ilişkilendirilmiş bir TableAdapter yapılandırıyorsanız bu ekranı görmezsiniz.)
Veritabanı için doğru izinlere sahipseniz, temel alınan veritabanında yeni bir saklı yordam oluşturma seçeneğiniz vardır. Bu izinlere sahip değilseniz bu seçenek kullanılamaz.
TableAdapter'ın SELECT, INSERT, UPDATE ve DELETE komutları için mevcut saklı yordamları çalıştırmayı da seçebilirsiniz. Örneğin Update komutuna atanan saklı yordam, yöntem çağrıldığında
TableAdapter.Update()
çalıştırılır.
Seçili saklı yordamdaki parametreleri veri tablosundaki ilgili sütunlara eşleyin. Örneğin, saklı yordamınız tablodaki sütuna geçirdiği adlı @CompanyName
bir parametreyi kabul ederse, parametresinin Kaynak Sütununu@CompanyName
olarak CompanyName
CompanyName
ayarlayın.
Not
Komutuna atanan saklı yordam, sihirbazın SELECT
sonraki adımında adlandırdığınız TableAdapter yöntemini çağırarak çalıştırılır. Varsayılan yöntem şeklindedir Fill
, bu nedenle genellikle yordamı çalıştırmak SELECT
için kullanılan kod olur TableAdapter.Fill(tableName)
. varsayılan adını yerine Fill
Fill
atadığınız adı yazın ve "TableAdapter"ı TableAdapter'ın gerçek adıyla değiştirin (örneğin, CustomersTableAdapter
).
- Güncelleştirmeleri doğrudan veritabanına göndermek için Yöntemler oluştur seçeneğinin seçilmesi, özelliği true olarak ayarlamakla
GenerateDBDirectMethods
eşdeğerdir. Özgün SQL deyimi yeterli bilgi sağlamadığında veya sorgu güncelleştirilebilir bir sorgu olmadığında seçeneği kullanılamaz. Bu durum, örneğin, tek bir (skaler) değer döndüren JOIN sorgularında ve sorgularında oluşabilir.
Sihirbazdaki Gelişmiş Seçenekler aşağıdakileri yapmanızı sağlar:
- SQL deyimleri oluştur sayfasında tanımlanan deyimi temel alarak
SELECT
,UPDATE
veDELETE
deyimleri oluşturmaINSERT
- İyimser eşzamanlılık kullanma
- Ve
UPDATE
deyimleri çalıştırıldıktan sonraINSERT
veri tablosunun yenilenip yenilenmeyeceğini belirtin
TableAdapter'ın Fill yöntemini yapılandırma
Bazen TableAdapter tablosunun şemasını değiştirmek isteyebilirsiniz. Bunu yapmak için TableAdapter'ın birincil Fill
yöntemini değiştirirsiniz. TableAdapters, ilişkili veri tablosunun şemasını tanımlayan birincil Fill
bir yöntemle oluşturulur. Birincil Fill
yöntem, TableAdapter'ı ilk kez yapılandırırken girdiğiniz sorguyu veya saklı yordamı temel alır. DataSet Tasarım Aracı veri tablosunun altındaki ilk (en üst) yöntemdir.
TableAdapter'ın ana Fill
yönteminde yaptığınız tüm değişiklikler ilişkili veri tablosunun şemasına yansıtılır. Örneğin, main Fill
yöntemindeki sorgudan bir sütunun kaldırılması, sütunu ilişkili veri tablosundan da kaldırır. Ayrıca, sütunu main Fill
yönteminden kaldırmak, sütunu bu TableAdapter için ek sorgulardan kaldırır.
TableAdapter Sorgu Yapılandırma Sihirbazı'nı kullanarak TableAdapter için ek sorgular oluşturabilir ve düzenleyebilirsiniz. Skaler değer döndürmedikleri sürece bu ek sorguların tablo şemasına uyması gerekir. Her ek sorgu, belirttiğiniz bir ada sahiptir.
Aşağıdaki örnekte adlı FillByCity
ek bir sorgunun nasıl çağrılacakları gösterilmektedir:
CustomersTableAdapter.FillByCity(NorthwindDataSet.Customers, "Seattle")
TableAdapter Sorgu Yapılandırma Sihirbazı'nı yeni bir sorguyla başlatmak için
Veri kümesi Tasarım Aracı veri kümenizi açın.
Yeni bir sorgu oluşturuyorsanız, Araç Kutusu'nun DataSet sekmesinden bir Sorgu nesnesini öğesine DataTablesürükleyin veya TableAdapter'ın kısayol menüsünden Sorgu Ekle'yi seçin. Sorgu nesnesini, ilişkili DataTableolmayan birTableAdapter oluşturan Veri Kümesi Tasarım Aracı boş bir alanına da sürükleyebilirsiniz. Bu sorgular yalnızca tek (skaler) değerler döndürebilir veya veritabanında ,
INSERT
veyaDELETE
komutlarını çalıştırabilirUPDATE
.Verilerinizi Seçin Bağlan ekranında sorgunun kullanacağı bağlantıyı seçin veya oluşturun.
Not
Bu ekran yalnızca tasarımcı kullanılacak doğru bağlantıyı belirleyemiyorsa veya kullanılabilir bağlantı olmadığında görünür.
Komut Türü Seçin ekranında, veritabanından veri getirmenin aşağıdaki yöntemlerinden birini seçin:
SQL deyimlerini kullanma, veritabanınızdan verileri seçmek için bir SQL deyimi yazmanızı sağlar.
Yeni saklı yordam oluştur, sihirbazın belirtilen
SELECT
deyimi temel alarak yeni bir saklı yordam (veritabanında) oluşturmasını sağlar.Mevcut saklı yordamları kullanma, sorguyu çalıştırırken mevcut bir saklı yordamı çalıştırmanızı sağlar.
Varolan bir sorguda TableAdapter Sorgu Yapılandırma sihirbazını başlatmak için
Mevcut bir TableAdapter sorgusunu düzenliyorsanız, sorguya sağ tıklayın ve kısayol menüsünden Yapılandır'ı seçin.
Not
TableAdapter'ın ana sorgusuna sağ tıklanması TableAdapter'ı ve DataTable şemayı yeniden yapılandırır. Ancak TableAdapter'da ek bir sorguya sağ tıklanması yalnızca seçili sorguyu yapılandırır. TableAdapter Yapılandırma Sihirbazı TableAdapter tanımını yeniden yapılandırırken, TableAdapter Sorgu Yapılandırma Sihirbazı yalnızca seçili sorguyu yeniden yapılandırır.
TableAdapter'a genel sorgu eklemek için
Genel sorgular, tek bir (skaler) değer döndüren veya değer içermeyen SQL sorgularıdır. Genel işlevler genellikle eklemeler, güncelleştirmeler ve silmeler gibi veritabanı işlemlerini gerçekleştirir. Ayrıca bir tablodaki müşteri sayısı veya belirli bir siparişteki tüm öğelerin toplam ücretleri gibi bilgileri de toplar.
Bir Sorgu nesnesini Araç Kutusu'nunDataSet sekmesinden Veri Kümesi Tasarım Aracı boş bir alana sürükleyerek genel sorgular eklersiniz.
İstenen görevi gerçekleştiren bir sorgu sağlayın, örneğin,
SELECT COUNT(*) AS CustomerCount FROM Customers
.Not
Sorgu nesnesini doğrudan Veri Kümesi Tasarım Aracı sürüklemek, yalnızca skaler (tek) değer döndüren bir yöntem oluşturur. Seçtiğiniz sorgu veya saklı yordam tek bir değerden daha fazlasını döndürebileceğinden, sihirbaz tarafından oluşturulan yöntem yalnızca tek bir değer döndürür. Örneğin, sorgu döndürülen verilerin ilk satırının ilk sütununu döndürebilir.
İlgili içerik
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin