Práce s daty v sadě Visual Studio
V sadě Visual Studio můžete vytvářet aplikace, které se připojují k datům ve virtuálním databázovém produktu nebo službě, v libovolném formátu, kdekoli – na místním počítači, v místní síti nebo ve veřejném, privátním nebo hybridním cloudu.
Pro aplikace v JavaScriptu, Pythonu, PHP, Ruby nebo C++ se připojujete k datům, jako jste udělali cokoli jiného, získáním knihoven a psaním kódu. Pro aplikace .NET sada Visual Studio poskytuje nástroje, které můžete použít k prozkoumání zdrojů dat, vytváření objektů modelů pro ukládání a manipulaci s daty v paměti a svázání dat s uživatelským rozhraním. Microsoft Azure poskytuje sady SDK pro .NET, Javu, Node.js, PHP, Python, Ruby a mobilní aplikace a nástroje v sadě Visual Studio pro připojení ke službě Azure Storage.
V následujících seznamech je uvedeno jen několik z mnoha databázových a úložných systémů, které je možné použít ze sady Visual Studio. Nabídky Microsoft Azure jsou datové služby, které zahrnují veškeré zřizování a správu podkladového úložiště dat. Úloha vývoj pro Azure ve Visual Studio vám umožňuje pracovat přímo s datovými úložišti Azure z Visual Studio.
Většina ostatních databázových produktů SQL a NoSQL, které jsou zde uvedeny, je možné hostovat na místním počítači, v místní síti nebo v Microsoft Azure na virtuálním počítači. Pokud hostujete databázi na virtuálním počítači Microsoft Azure, zodpovídáte za správu samotné databáze.
Microsoft Azure
- SQL Database
- Azure Cosmos DB
- Datové úložiště (objekty blob, tabulky, fronty, soubory)
- SQL Data Warehouse
- SQL Server Stretch Database (rozšíření databáze)
- StorSimple
- A další...
SQL
- SQL Server 2005–2016 (zahrnuje Express a LocalDB)
- Pták ohnivák
- MariaDB
- MySQL
- Oracle
- PostgreSQL
- SQLite
- A další...
NoSQL
- Apache Cassandra
- CouchDB
- MongoDB
- NDatabase
- OrientDB|
- RavenDB
- VelocityDB
- A další...
Mnoho dodavatelů databází a třetích stran podporuje integraci sady Visual Studio pomocí balíčků NuGet. Nabídky můžete prozkoumat na nuget.org nebo prostřednictvím Správce balíčků NuGet v sadě Visual Studio (Tools>Správce balíčků NuGet>Spravovat balíčky NuGet prořešení). Ostatní databázové produkty se integrují se sadou Visual Studio jako rozšíření. Tyto nabídky můžete procházet v Visual Studio Marketplace nebo tak, že přejdete na Rozšíření>Spravovat rozšíření a pak vyberete možnost Online v levém panelu dialogového okna. Další informace naleznete v tématu Kompatibilní databázové systémy pro Visual Studio.
Pomocí připojených služeb sady Visual Studiomůžete zjednodušit proces přidávání podpory databáze do vašich projektů.
Pro scénáře SQL Serveru podporujeme prostřednictvím připojených služeb:
- SQL Server lokálně V tomto scénáři nainstalujete SQL Server někam do místní sítě a připojíte se k němu.
- SQL Server na místním počítači V tomto scénáři nainstalujete SQL Server na místní počítač a připojíte se k němu.
- SQL Server Express LocalDB. Nenainstalujete nic jiného než Visual Studio; stačí se k němu připojit.
- SQL Server Express LocalDB v kontejneru. LocalDB jako v předchozí možnosti, ale uvnitř místního kontejneru.
- Databáze Azure SQL Serveru. Připojte se ke službě spuštěné živě v Azure.
V případě jiných technologií souvisejících s daty podporuje Visual Studio 2022 následující:
- Azure Storage (místní i vzdálené)
- Azure Cosmos DB (místní i vzdálené)
- SQLite (možnost jen pro místní prostředí)
- PostgreSQL v kontejneru (možnost jen pro místní prostředí)
- MongoDB v kontejneru (možnost jen pro místní prostředí)
Kromě připojených služeb jsou v následujících seznamech vidět jen některé z mnoha databázových a úložných systémů, které je možné použít ze sady Visual Studio. Nabídky Microsoft Azure jsou datové služby, které zahrnují veškeré zřizování a správu podkladového úložiště dat. Úloha Azure vývoj ve Visual Studio umožňuje pracovat s úložišti dat Azure přímo ve Visual Studio.
Většina ostatních databázových produktů SQL a NoSQL, které jsou zde uvedeny, je možné hostovat na místním počítači, v místní síti nebo v Microsoft Azure na virtuálním počítači. Pokud hostujete databázi na virtuálním počítači Microsoft Azure, zodpovídáte za správu samotné databáze.
Microsoft Azure
- SQL Data Warehouse
- SQL Server Stretch Database (Databáze pro rozšíření SQL Serveru)
- StorSimple
- A další...
SQL
- Ohnivý pták
- MariaDB
- MySQL
- Oracle
- A další...
NoSQL
- Apache Cassandra
- CouchDB
- MongoDB
- NDatabase
- OrientDB|
- RavenDB
- VelocityDB
- A další...
Poznámka
Rozšířená podpora pro SQL Server 2005 skončila 12. dubna 2016. Není zaručeno, že datové nástroje v sadě Visual Studio 2015 a novější budou i nadále fungovat s SQL Serverem 2005.
Jazyky .NET
Technologie přístupu k datům popsaná v dokumentaci k sadě Visual Studio používá ADO.NET. ADO.NET je starší architektura pro přístup k datům a nedoporučuje se pro moderní datové aplikace. Pro vývoj přístupu k datům doporučujeme cílit na .NET Core nebo .NET 5 a novější a používat Entity Framework Core.
ADO.NET je sada tříd, která definuje rozhraní pro přístup k jakémukoli druhu zdroje dat, a to jak relační, tak nerelační. Visual Studio obsahuje několik nástrojů a návrhářů, kteří pracují s ADO.NET, které vám pomůžou připojit se k databázím, manipulovat s daty a prezentovat data uživateli. Dokumentace v této části popisuje, jak tyto nástroje používat. Můžete také programovat přímo proti objektům příkazů ADO.NET. Další informace o přímém volání rozhraní API ADO.NET naleznete v tématu ADO.NET.
Dokumentaci k přístupu k datům související s ASP.NET najdete v tématu Práce s daty na webu ASP.NET. Pro instruktáž o použití Entity Framework s modelem ASP.NETView-Controller (MVC) si přečtěte téma Začínáme s Entity Framework 6 Code First pomocí MVC 5.
Aplikace pro univerzální platformu Windows (UPW) v jazyce C# nebo Visual Basic můžou používat sadu Microsoft Azure SDK pro .NET pro přístup ke službě Azure Storage a dalším službám Azure. Třída Windows.Web.HttpClient umožňuje komunikaci s libovolnou službou RESTful. Další informace naleznete v tématu Jak se připojit k serveru HTTP pomocí windows.Web.Http.
Pro ukládání dat na místním počítači se doporučuje použít SQLite, který běží ve stejném procesu jako aplikace. Pokud je vyžadována vrstva mapování objektově-relační (ORM), můžete použít Entity Framework. Další informace najdete v tématu Přístup k datům.
Pokud se připojujete ke službám Azure, nezapomeňte si stáhnout nejnovější nástroje sady Azure SDK.
Zprostředkovatelé dat
Aby mohla být databáze v ADO.NET používána, musí mít speciální ADO.NET zprostředkovatele dat nebo musí vystavit rozhraní ODBC nebo OLE DB. Společnost Microsoft poskytuje seznam ADO.NET poskytovatelů dat pro produkty SQL Serveru a také zprostředkovatele ODBC a OLE DB.
Poznámka
Pokud k připojení k databázím pomocí zprostředkovatelů dat OLEDB nebo ODBC používáte Visual Studio, musíte vědět, že verze sady Visual Studio před sadou Visual Studio 2022 jsou všechny 32bitové procesy. To znamená, že některé datové nástroje v sadě Visual Studio se budou moct připojit jenom k databázím OLEDB nebo ODBC pomocí 32bitových zprostředkovatelů dat. To zahrnuje 32bitového poskytovatele dat OLEDB pro Microsoft Access i další 32bitové zprostředkovatele od jiných výrobců.
Pokud používáte Visual Studio 2022 pro připojení k databázím, musíte mít na paměti, že Visual Studio 2022 je 64bitový proces. To znamená, že některé datové nástroje v sadě Visual Studio se nebudou moct připojit k databázím OLEDB nebo ODBC pomocí 32bitových zprostředkovatelů dat.
Pokud potřebujete udržovat 32bitové aplikace, které se připojují k databázím OLEDB nebo ODBC, budete moct aplikaci se sadou Visual Studio 2022 sestavit a spustit. Pokud ale potřebujete použít některý z nástrojů Visual Studio Data Tools, jako je Průzkumník serveru, Průvodce zdrojem dat nebo Návrhář datové sady, budete muset použít starší verzi sady Visual Studio, která je stále 32bitový proces. Poslední verzí sady Visual Studio, která byla 32bitová verze, byla Visual Studio 2019.
Pokud plánujete převést projekt na 64bitový proces, doporučujeme použít 64bitový databázový stroj Microsoft Accessu, označovaný také jako Access Connectivity Engine (ACE). Další informace najdete v tématu Zprostředkovatel OLE DB pro Jet a ovladač ODBC jsou pouze 32bitové verze.
Datové modelování
V .NET máte tři možnosti modelování a manipulace s daty v paměti po načtení ze zdroje dat:
Entity Framework: upřednostňovaná technologie Microsoft ORM. Můžete ho použít k programování proti relačním datům jako prvotřídních objektů .NET. U nových aplikací by měla být výchozí první volbou v případě, že se vyžaduje model. Vyžaduje vlastní podporu od základního poskytovatele ADO.NET.
LINQ to SQL: Relační mapovač objektu předchozí generace. Funguje dobře pro méně složité scénáře, ale už není aktivní ve vývoji.
datové sady: Nejstarší ze tří technologií modelování. Je navržená především pro rychlý vývoj "formulářů nad daty", ve kterých nezpracováváte velké objemy dat nebo provádíte složité dotazy nebo transformace. Objekt DataSet se skládá z objektů DataTable a DataRow, které logicky podobají objektům SQL Database mnohem více než objekty .NET. U relativně jednoduchých aplikací založených na zdrojích dat SQL můžou být datové sady stále dobrou volbou.
Není nutné používat žádnou z těchto technologií. V některých scénářích, zejména v případě, že je výkon kritický, můžete jednoduše použít Objekt DataReader ke čtení z databáze a zkopírovat hodnoty, které potřebujete, do objektu kolekce, například List<T>.
Nativní jazyk C++
Aplikace C++, které se připojují k SQL Serveru, by měly ve většině případů používat ovladač Microsoft® ODBC 13.1 pro SQL Server. Pokud jsou servery propojeny, je nutné použít OLE DB, a pro to použijte SQL Server Native Client. K jiným databázím můžete přistupovat přímo pomocí odbc nebo ovladačů OLE DB. Odbc je aktuální standardní databázové rozhraní, ale většina databázových systémů poskytuje vlastní funkce, ke kterým není možné přistupovat prostřednictvím rozhraní ODBC. OLE DB je starší technologie přístupu k datům modelu COM, která je stále podporována, ale nedoporučuje se pro nové aplikace. Další informace naleznete v tématu Data Access v jazyce Visual C++.
Programy C++, které využívají služby REST, mohou používat C++ REST SDK.
Modelování dat – Visual Studio neposkytuje vrstvu ORM pro C++. ODB je oblíbený open source ORM pro C++.
Další informace o připojování k databázím z aplikací C++ najdete v tématu datové nástroje sady Visual Studio pro C++.
JavaScript
JavaScript v sadě Visual Studio je prvotřídní jazyk pro vytváření multiplatformních aplikací, aplikací pro UPW, cloudových služeb, webů a webových aplikací. K instalaci oblíbených javascriptových knihoven a databázových produktů můžete použít Bower, Grunt, Gulp, npm a NuGet ze sady Visual Studio. Připojte se k Azure Storage a službám stáhněte sady SDK z webu Azure. Edge.js je knihovna, která připojuje JavaScript (Node.js) na straně serveru k ADO.NET zdrojů dat.
Python
Nainstalujte podporu Pythonu v sadě Visual Studio pro vytváření aplikací v Pythonu. Dokumentace k Azure obsahuje několik kurzů připojení k datům, včetně následujících:
- Django a SQL Database na Azure
- Django a MySQL v Azure
- Práce s objekty blob, soubory, frontya tabulky (Cosmo DB).
Související obsah
Microsoft Azure Storage – popisuje Azure Storage a jak vytvářet aplikace pomocí objektů blob, tabulek, front a souborů Azure.
Azure SQL Database– Popisuje, jak se připojit ke službě Azure SQL Database, relační databázi jako službu.
SQL Server Data Tools– popisuje nástroje, které zjednodušují návrh, zkoumání, testování a nasazování aplikací a databází připojených k datům.
ADO.NET– popisuje ADO.NET architekturu a způsob použití tříd ADO.NET ke správě aplikačních dat a interakci se zdroji dat a XML.
ADO.NET Entity Framework– popisuje, jak vytvářet datové aplikace, které vývojářům umožňují programovat proti konceptuálnímu modelu místo přímo proti relační databázi.
WCF Data Services 4.5— Popisuje, jak pomocí WCF Data Services nasadit datové služby na webu nebo intranetu, které implementují Open Data Protocol (OData).
data v řešeních pro systém Office– obsahuje odkazy na témata vysvětlující fungování dat v řešeních Office. To zahrnuje informace o programování orientovaném na schématu, ukládání dat do mezipaměti a přístupu k datům na straně serveru.
LINQ (Language Integrated Query)– popisuje možnosti dotazů integrované v jazyce C# a Visual Basic a společný model pro dotazování relačních databází, dokumentů XML, datových sad a kolekcí v paměti.
XML Tools v sadě Visual Studio– popisuje práci s daty XML, laděníM XSLT, funkcemi .NET XML a architekturou dotazu XML.
Dokumenty XML a data– poskytuje přehled o komplexní a integrované sadě tříd, které pracují s dokumenty XML a daty v .NET.