Visual Studio’da verilerle çalışma

Visual Studio'da, hemen hemen her veritabanı ürününde veya hizmetinde, herhangi bir biçimde, her yerde, yerel makinede, yerel alan ağında ya da genel, özel veya karma bir bulutta verilere bağlanan uygulamalar oluşturabilirsiniz.

JavaScript, Python, PHP, Ruby veya C++'daki uygulamalar için, kitaplıkları edinerek ve kod yazarak başka bir şey yaptığınız gibi verilere bağlanırsınız. .NET uygulamaları için Visual Studio, veri kaynaklarını keşfetmek, verileri bellekte depolamak ve işlemek için nesne modelleri oluşturmak ve verileri kullanıcı arabirimine bağlamak için kullanabileceğiniz araçlar sağlar. Microsoft Azure; .NET, Java, Node.js, PHP, Python, Ruby ve mobil uygulamalar için SDK'lar ve Azure Depolama'a bağlanmak için Visual Studio'da araçlar sağlar.

Aşağıdaki listelerde Visual Studio'dan kullanılabilecek birçok veritabanı ve depolama sisteminden yalnızca birkaçı gösterilmektedir. Microsoft Azure teklifleri, temel alınan veri deposunun tüm sağlama ve yönetimini içeren veri hizmetleridir. Visual Studio'daki Azure geliştirme iş yükü, Doğrudan Visual Studio'dan Azure veri depolarıyla çalışmanızı sağlar.

Azure geliştirme iş yükü

Burada listelenen diğer SQL ve NoSQL veritabanı ürünlerinin çoğu yerel makinede, yerel ağda veya Microsoft Azure'da bir sanal makinede barındırılabilir. Veritabanını bir Microsoft Azure sanal makinesinde barındırıyorsanız, veritabanının kendisini yönetmek sizin sorumluluğundadır.

Microsoft Azure

  • SQL Veritabanı
  • Azure Cosmos DB
  • Depolama (bloblar, tablolar, kuyruklar, dosyalar)
  • SQL Veri Ambarı
  • SQL Server Stretch Database
  • StorSimple
  • Ve diğerleri...

SQL

  • SQL Server 2005-2016 (Express ve LocalDB içerir)
  • Firebird
  • MariaDB
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite
  • Ve diğerleri...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • Ve diğerleri...

Birçok veritabanı satıcısı ve üçüncü taraf NuGet paketleriyle Visual Studio tümleştirmeyi destekler. Teklifleri nuget.org veya Visual Studio'daki NuGet Paket Yöneticisi (Çözüm için NuGet> Paketlerini Yönetme Araçları>) Paket Yöneticisi keşfedebilirsiniz. Diğer veritabanı ürünleri Visual Studio ile uzantı olarak tümleştirilir. Visual Studio Market'te veya Uzantılar>Uzantıları Yönet'e gidip iletişim kutusunun sol bölmesinde Çevrimiçi'ni seçerek bu tekliflere göz atabilirsiniz. Daha fazla bilgi için bkz . Visual Studio için uyumlu veritabanı sistemleri.

Visual Studio Bağlan ed Services kullanarak projelerinize veritabanı desteği ekleme işlemini basitleştirebilirsiniz.

Bağlan ed Services aracılığıyla desteklenen SQL Server senaryoları için:

  • Şirket içi SQL Server. Bu senaryoda, SQL Server'ı yerel ağınızda bir yere yükler ve ona bağlanırsınız.
  • Yerel makinenizde SQL Server. Bu senaryoda, yerel makinenize SQL Server yükler ve ona bağlanırsınız.
  • SQL Server Express LocalDB. Visual Studio dışında bir şey yüklemezsiniz; sadece ona bağlanırsınız.
  • Kapsayıcı üzerinde SQL Server Express LocalDB. Önceki seçenekte olduğu gibi localDB, ancak yerel bir kapsayıcının içinde.
  • Azure SQL Server DB. Azure'da canlı çalışan hizmete Bağlan.

Verilerle ilgili diğer teknolojiler için Visual Studio 2022 aşağıdakileri destekler:

  • Azure Depolama (hem yerel hem de uzak)
  • Azure Cosmos DB (hem yerel hem de uzak)
  • SQLite (yalnızca yerel seçenek)
  • Kapsayıcıda PostgreSQL (yalnızca yerel seçenek)
  • Kapsayıcıda MongoDB (yalnızca yerel seçenek)

Aşağıdaki listelerde, Bağlan hizmetler dışında Visual Studio'dan kullanılabilecek birçok veritabanı ve depolama sisteminden yalnızca birkaçı gösterilmektedir. Microsoft Azure teklifleri, temel alınan veri deposunun tüm sağlama ve yönetimini içeren veri hizmetleridir. Visual Studio'daki Azure geliştirme iş yükü, Doğrudan Visual Studio'dan Azure veri depolarıyla çalışmanızı sağlar.

Azure geliştirme iş yükü

Burada listelenen diğer SQL ve NoSQL veritabanı ürünlerinin çoğu yerel makinede, yerel ağda veya Microsoft Azure'da bir sanal makinede barındırılabilir. Veritabanını bir Microsoft Azure sanal makinesinde barındırıyorsanız, veritabanının kendisini yönetmek sizin sorumluluğundadır.

Microsoft Azure

  • SQL Veri Ambarı
  • SQL Server Stretch Database
  • StorSimple
  • Ve diğerleri...

SQL

  • Firebird
  • MariaDB
  • MySQL
  • Oracle
  • Ve diğerleri...

NoSQL

  • Apache Cassandra
  • CouchDB
  • MongoDB
  • NDatabase
  • OrientDB|
  • RavenDB
  • VelocityDB
  • Ve diğerleri...

Not

SQL Server 2005 için genişletilmiş destek 12 Nisan 2016'da sona erdi. Visual Studio 2015 ve sonraki sürümlerdeki veri araçlarının SQL Server 2005 ile çalışmaya devam edeceği garanti değildir. Daha fazla bilgi için bkz . SQL Server 2005 için destek sonu duyurusu.

.NET dilleri

Visual Studio belgelerinde açıklanan veri erişim teknolojisi ADO.NET kullanır. ADO.NET eski bir veri erişim çerçevesidir ve modern veri uygulamaları için önerilmez. .NET Core veya .NET 5 ve üzerini hedeflemenizi ve veri erişimi geliştirme için Entity Framework Core kullanmanızı öneririz.

ADO.NET, ilişkisel ve ilişkisel olmayan her tür veri kaynağına erişmek için bir arabirim tanımlayan bir sınıf kümesidir. Visual Studio'da veritabanlarına bağlanmanıza, verileri işlemenize ve verileri kullanıcıya sunmanıza yardımcı olmak için ADO.NET ile çalışan çeşitli araçlar ve tasarımcılar vardır. Bu bölümdeki belgelerde bu araçların nasıl kullanılacağı açıklanmaktadır. Ayrıca doğrudan ADO.NET komut nesnelerine karşı da programlayabilirsiniz. ADO.NET API'lerini doğrudan çağırma hakkında daha fazla bilgi için bkz . ADO.NET.

ASP.NET ile ilgili veri erişimi belgeleri için bkz . ASP.NET sitesinde Verilerle Çalışma. Entity Framework'ü ASP.NET Model-Görünüm Denetleyicisi (MVC) ile kullanma öğreticisi için bkz . MVC 5 kullanarak Entity Framework 6 Code First kullanmaya başlama.

C# veya Visual Basic'teki Evrensel Windows Platformu (UWP) uygulamaları, Azure Depolama ve diğer Azure hizmetlerine erişmek için .NET için Microsoft Azure SDK kullanabilir. Windows.Web.HttpClient sınıfı, herhangi bir RESTful hizmetiyle iletişimi etkinleştirir. Daha fazla bilgi için bkz . Windows.Web.Http kullanarak bir HTTP sunucusuna bağlanma.

Yerel makinede veri depolama için önerilen yaklaşım, uygulamayla aynı işlemde çalışan SQLite kullanmaktır. Nesne ilişkisel eşleme (ORM) katmanı gerekiyorsa, Entity Framework'i kullanabilirsiniz. Daha fazla bilgi için bkz . Windows Geliştirici Merkezi'nde veri erişimi .

Azure hizmetlerine bağlanıyorsanız en son Azure SDK araçlarını indirdiğinizden emin olun.

Veri sağlayıcılar

Veritabanının ADO.NET kullanılabilmesi için özel bir ADO.NET veri sağlayıcısına sahip olması veya odbc veya OLE DB arabirimini kullanıma sunması gerekir. Microsoft, SQL Server ürünlerinin yanı sıra ODBC ve OLE DB sağlayıcıları için ADO.NET veri sağlayıcılarının listesini sağlar.

Not

OLEDB veya ODBC veri sağlayıcıları kullanarak veritabanlarına bağlanmak için Visual Studio kullanıyorsanız, Visual Studio'nun Visual Studio 2022'den önceki sürümlerinin 32 bit işlemleri olduğunu bilmeniz gerekir. Bu, Visual Studio'daki bazı veri araçlarının yalnızca 32 bit veri sağlayıcıları kullanarak OLEDB veya ODBC veritabanlarına bağlanabileceği anlamına gelir. Buna Microsoft Access 32 bit OLEDB veri sağlayıcısının yanı sıra diğer üçüncü taraf 32 bit sağlayıcıları da dahildir.

Veritabanlarına bağlanmak için Visual Studio 2022 kullanıyorsanız Visual Studio 2022'nin 64 bitlik bir işlem olduğunu bilmeniz gerekir. Bu, Visual Studio'daki bazı veri araçlarının 32 bit veri sağlayıcıları kullanarak OLEDB veya ODBC veritabanlarına bağlanamayacağı anlamına gelir.

OLEDB veya ODBC veritabanlarına bağlanan 32 bit uygulamaların bakımını yapmanız gerekiyorsa, uygulamayı Visual Studio 2022 ile derleyip çalıştırmaya devam edebilirsiniz. Ancak, Sunucu Gezgini, Veri Kaynağı Sihirbazı veya DataSet Tasarım Aracı gibi Visual Studio Veri Araçlarından herhangi birini kullanmanız gerekiyorsa, Visual Studio'nun hala 32 bit işlem olan önceki bir sürümünü kullanmanız gerekir. Visual Studio'nun 32 bit işlem olan son sürümü Visual Studio 2019'du.

Projeyi 64 bit bir işlem olarak dönüştürmeyi planlıyorsanız, Access Bağlan ivity Engine (ACE) olarak da adlandırılan 64 bit Microsoft Access veritabanı Altyapısı'nı kullanmanız önerilir. Daha fazla bilgi için bkz . Jet ve ODBC sürücüsü için OLE DB Sağlayıcısı yalnızca 32 bit sürümlerdir.

Veri modelleme

.NET'te, bir veri kaynağından aldıktan sonra bellekteki verileri modellemek ve işlemek için üç seçeneğiniz vardır:

Entity Framework Tercih edilen Microsoft ORM teknolojisidir. İlişkisel verilere karşı birinci sınıf .NET nesneleri olarak programlamak için bunu kullanabilirsiniz. Yeni uygulamalar için, bir model gerektiğinde varsayılan ilk seçenek olmalıdır. Temel ADO.NET sağlayıcısından özel destek gerektirir.

LINQ to SQL Önceki nesil nesne ilişkisel eşleyici. Daha az karmaşık senaryolar için iyi çalışır ancak artık etkin geliştirme aşamasında değildir.

Veri Kümeleri Üç modelleme teknolojisinden en eskisi. Birincil olarak çok miktarda veri işlemediğiniz veya karmaşık sorgular veya dönüşümler gerçekleştirmediğiniz "veri üzerinde formlar" uygulamalarının hızlı bir şekilde geliştirilmesi için tasarlanmıştır. DataSet nesnesi, .NET nesnelerinden çok daha SQL Veritabanı nesnelere mantıksal olarak benzeyen DataTable ve DataRow nesnelerinden oluşur. SQL veri kaynaklarını temel alan nispeten basit uygulamalar için veri kümeleri yine de iyi bir seçim olabilir.

Bu teknolojilerden herhangi birini kullanmaya gerek yoktur. Bazı senaryolarda, özellikle de performansın kritik olduğu durumlarda, veritabanından okumak ve ihtiyacınız olan değerleri Liste<T> gibi bir koleksiyon nesnesine kopyalamak için datareader nesnesi kullanabilirsiniz.

Yerel C++

SQL Server'a bağlanan C++ uygulamaları çoğu durumda SQL Server için Microsoft® ODBC Sürücüsü 13.1'i kullanmalıdır. Sunucular bağlıysa OLE DB gereklidir ve bunun için SQL Server Yerel İstemcisi'ni kullanırsınız. ODBC veya OLE DB sürücülerini doğrudan kullanarak diğer veritabanlarına erişebilirsiniz. ODBC geçerli standart veritabanı arabirimidir, ancak çoğu veritabanı sistemi ODBC arabirimi aracılığıyla erişilmeyecek özel işlevler sağlar. OLE DB, hala desteklenen ancak yeni uygulamalar için önerilmeyen eski bir COM veri erişim teknolojisidir. Daha fazla bilgi için bkz . Visual C++'da Veri Erişimi.

REST hizmetlerini kullanan C++ programları C++ REST SDK'sını kullanabilir.

Microsoft Azure Depolama ile çalışan C++ programları Microsoft Azure Depolama İstemcisi'ni kullanabilir.

Veri modelleme— Visual Studio, C++ için bir ORM katmanı sağlamaz. ODB , C++ için popüler bir açık kaynak ORM'dir.

C++ uygulamalarından veritabanlarına bağlanma hakkında daha fazla bilgi edinmek için bkz . C++ için Visual Studio veri araçları. Eski Visual C++ veri erişim teknolojileri hakkında daha fazla bilgi için bkz . Veri Erişimi.

JavaScript

Visual Studio'daki JavaScript, platformlar arası uygulamalar, UWP uygulamaları, bulut hizmetleri, web siteleri ve web uygulamaları oluşturmaya yönelik birinci sınıf bir dildir. Sık kullandığınız JavaScript kitaplıklarını ve veritabanı ürünlerini yüklemek için Visual Studio'dan Bower, Grunt, Gulp, npm ve NuGet kullanabilirsiniz. SDK'ları Azure web sitesinden indirerek Azure Depolama ve hizmetlerine Bağlan. Edge.js, sunucu tarafı JavaScript'i (Node.js) ADO.NET veri kaynaklarına bağlayan bir kitaplıktır.

Python

Python uygulamaları oluşturmak için Visual Studio'ya Python desteği yükleyin. Azure belgelerinde verilere bağlanmayla ilgili aşağıdakiler de dahil olmak üzere çeşitli öğreticiler bulunur:

Microsoft AI platformu— Cortana Analytics Suite ve Nesnelerin İnterneti desteği de dahil olmak üzere Microsoft akıllı buluta giriş sağlar.

Microsoft Azure Depolama—Azure Depolama ve Azure blobları, tabloları, kuyrukları ve dosyaları kullanarak uygulama oluşturmayı açıklar.

Azure SQL Veritabanı—hizmet olarak ilişkisel bir veritabanı olan Azure SQL Veritabanı bağlanmayı açıklar.

SQL Server Veri Araçları—Veri bağlantılı uygulama ve veritabanlarının tasarımını, keşfini, testini ve dağıtımını basitleştiren araçları açıklar.

ADO.NET—ADO.NET mimarisini ve ADO.NET sınıflarını kullanarak uygulama verilerini yönetmeyi ve veri kaynakları ve XML ile etkileşim kurmayı açıklar.

ADO.NET Entity Framework—Geliştiricilerin doğrudan ilişkisel bir veritabanına karşı değil kavramsal bir modele göre programlamasına olanak sağlayan veri uygulamalarının nasıl oluşturulacağını açıklar.

WCF Veri Hizmetleri 4.5—WCF Veri Hizmetleri kullanarak web'de veya Açık Veri Protokolü(OData) uygulayan bir intranette veri hizmetlerini dağıtmayı açıklar.

Office Çözümlerindeki Veriler— Office çözümlerinde verilerin nasıl çalıştığını açıklayan konuların bağlantılarını içerir. Burada şema tabanlı programlama, verileri önbelleğe alma ve sunucu tarafında veri erişimi hakkında bilgiler bulunur.

LINQ (Dil Tümleşik Sorgu)—C# ve Visual Basic'te yerleşik olarak bulunan sorgu özelliklerini ve ilişkisel veritabanlarını, XML belgelerini, veri kümelerini ve bellek içi koleksiyonları sorgulamaya yönelik ortak modeli açıklar.

Visual Studio'daki XML Araçları—XML verileriyle çalışmayı, XSLT hatalarını ayıklamayı, .NET XML özelliklerini ve XML Sorgusu mimarisini açıklar.

XML Belgeleri ve Verileri— .NET'te XML belgeleri ve verileriyle çalışan kapsamlı ve tümleşik sınıf kümesine genel bir bakış sağlar.