Accéder aux données dans Visual StudioAccess data in Visual Studio

Dans Visual Studio, vous pouvez créer des applications qui se connectent à des données dans n’importe quel produit de base de données ou un service, dans n’importe quel format, n’importe où, sur un ordinateur local, sur un réseau local, ou dans un cloud public, privé ou hybride.In Visual Studio, you can create applications that connect to data in virtually any database product or service, in any format, anywhere—on a local machine, on a local area network, or in a public, private, or hybrid cloud.

Pour les applications avec JavaScript, Python, PHP, Ruby ou C++, vous connectez aux données comme vous le faites rien d’autre, en obtenant des bibliothèques et d’écriture de code.For applications in JavaScript, Python, PHP, Ruby, or C++, you connect to data like you do anything else, by obtaining libraries and writing code. Pour les applications .NET, Visual Studio fournit des outils que vous pouvez utiliser pour Explorer les sources de données, créer des modèles d’objet pour stocker et manipuler des données en mémoire et lier des données à l’interface utilisateur.For .NET applications, Visual Studio provides tools that you can use to explore data sources, create object models to store and manipulate data in memory, and bind data to the user interface. Microsoft Azure fournit des kits SDK pour .NET, Java, Node.js, PHP, Python, Ruby et les applications mobiles et les outils dans Visual Studio pour la connexion au stockage Azure.Microsoft Azure provides SDKs for .NET, Java, Node.js, PHP, Python, Ruby, and mobile apps, and tools in Visual Studio for connecting to Azure Storage.

Les listes suivantes présentent quelques-uns des nombreux systèmes base de données et de stockage qui peuvent être utilisés à partir de Visual Studio.The following lists show just a few of the many database and storage systems that can be used from Visual Studio. Le Microsoft Azure offres sont des services de données qui incluent tous les d’approvisionnement et d’administration de la banque de données sous-jacente.The Microsoft Azure offerings are data services that include all provisioning and administration of the underlying data store. Le développement Azure charge de travail dans Visual Studio 2017 vous permet de travailler avec des banques de données Azure directement à partir de Visual Studio.The Azure development workload in Visual Studio 2017 enables you to work with Azure data stores directly from Visual Studio.

Charge de travail Développement Azure

La plupart des autres SQL et NoSQL de base de données produits répertoriés ici peut être hébergée sur un ordinateur local, sur un réseau local ou dans Microsoft Azure sur une machine virtuelle.Most of the other SQL and NoSQL database products that are listed here can be hosted on a local machine, on a local network, or in Microsoft Azure on a virtual machine. Si vous hébergez la base de données dans une machine virtuelle Microsoft Azure, vous êtes responsable de la gestion de la base de données.If you host the database in a Microsoft Azure virtual machine, you're responsible for managing the database itself.

Microsoft AzureMicrosoft Azure

  • SQL DatabaseSQL Database
  • Azure Cosmos DBAzure Cosmos DB
  • Stockage (objets BLOB, tables, files d’attente, fichiers)Storage (blobs, tables, queues, files)
  • SQL Data WarehouseSQL Data Warehouse
  • SQL Server Stretch DatabaseSQL Server Stretch Database
  • StorSimpleStorSimple
  • Et plus encore...And more...

SQLSQL

  • SQL Server 2005-2016 (inclut Express et base de données locale)SQL Server 2005-2016 (includes Express and LocalDB)
  • FirebirdFirebird
  • MariaDBMariaDB
  • MySQLMySQL
  • OracleOracle
  • PostgreSQLPostgreSQL
  • SQLiteSQLite
  • Et plus encore...And more...

NoSQLNoSQL

  • Apache CassandraApache Cassandra
  • CouchDBCouchDB
  • MongoDBMongoDB
  • DonnéesNDatabase
  • OrientDB|OrientDB|
  • RavenDBRavenDB
  • VelocityDBVelocityDB
  • Et plus encore...And more...

Plusieurs fournisseurs de base de données et les tiers en charge l’intégration de Visual Studio par les packages NuGet.Many database vendors and third parties support Visual Studio integration by NuGet packages. Vous pouvez explorer les offres sur nuget.org ou via le Gestionnaire de Package NuGet dans Visual Studio (outils > Gestionnaire de Package NuGet > gérer NuGet Packages de Solution).You can explore the offerings on nuget.org or through the NuGet Package Manager in Visual Studio (Tools > NuGet Package Manager > Manage NuGet Packages for Solution). Autres produits de base de données s’intègrent avec Visual Studio en tant qu’extension.Other database products integrate with Visual Studio as an extension. Vous pouvez parcourir ces offres dans le Visual Studio Marketplace ou en accédant à outils > Extensions et mises à jour , puis en sélectionnant En ligne dans le volet gauche de la boîte de dialogue.You can browse these offerings in the Visual Studio Marketplace or by navigating to Tools > Extensions and Updates and then selecting Online in the left pane of the dialog box. Pour plus d’informations, consultez des systèmes de base de données Compatible pour Visual Studio.For more information, see Compatible database systems for Visual Studio.

Plusieurs fournisseurs de base de données et les tiers en charge l’intégration de Visual Studio par les packages NuGet.Many database vendors and third parties support Visual Studio integration by NuGet packages. Vous pouvez explorer les offres sur nuget.org ou via le Gestionnaire de Package NuGet dans Visual Studio (outils > Gestionnaire de Package NuGet > gérer NuGet Packages de Solution).You can explore the offerings on nuget.org or through the NuGet Package Manager in Visual Studio (Tools > NuGet Package Manager > Manage NuGet Packages for Solution). Autres produits de base de données s’intègrent avec Visual Studio en tant qu’extension.Other database products integrate with Visual Studio as an extension. Vous pouvez parcourir ces offres dans le Visual Studio Marketplace ou en accédant à Extensions > gérer les Extensions , puis en sélectionnant En ligne dans le volet gauche de la boîte de dialogue.You can browse these offerings in the Visual Studio Marketplace or by navigating to Extensions > Manage Extensions and then selecting Online in the left pane of the dialog box. Pour plus d’informations, consultez des systèmes de base de données Compatible pour Visual Studio.For more information, see Compatible database systems for Visual Studio.

Note

Le support étendu pour SQL Server 2005 a pris fin le 12 avril 2016.Extended support for SQL Server 2005 ended on April 12, 2016. Il n’existe aucune garantie que les outils de données dans Visual Studio 2015 et versions ultérieures continueront de fonctionner avec SQL Server 2005.There is no guarantee that data tools in Visual Studio 2015 and later will continue to work with SQL Server 2005. Pour plus d’informations, consultez le annonce de fin de support pour SQL Server 2005.For more information, see the end-of-support announcement for SQL Server 2005.

Langages .NET.NET languages

Tous les accès aux données .NET, y compris dans .NET Core, est basé sur ADO.NET, un ensemble de classes qui définit une interface pour accéder à n’importe quel type de source de données relationnel et non relationnelles.All .NET data access, including in .NET Core, is based on ADO.NET, a set of classes that defines an interface for accessing any kind of data source, both relational and non-relational. Visual Studio dispose de plusieurs outils et concepteurs qui fonctionnent avec ADO.NET pour vous aider à vous connecter aux bases de données, manipuler les données et présenter les données à l’utilisateur.Visual Studio has several tools and designers that work with ADO.NET to help you connect to databases, manipulate the data, and present the data to the user. La documentation de cette section décrit comment utiliser ces outils.The documentation in this section describes how to use those tools. Vous pouvez également programmer directement les objets de commande ADO.NET.You can also program directly against the ADO.NET command objects. Pour plus d’informations sur l’appel de directement les APIs ADO.NET, consultez ADO.NET.For more information about calling the ADO.NET APIs directly, see ADO.NET.

Pour l’accès aux données la documentation relative à ASP.NET, consultez utilisation des données sur le site ASP.NET.For data-access documentation related to ASP.NET, see Working with Data on the ASP.NET site. Pour obtenir un didacticiel sur l’utilisation d’Entity Framework avec ASP.NET MVC, consultez mise en route avec Entity Framework 6 Code First avec MVC 5.For a tutorial on using Entity Framework with ASP.NET MVC, see Getting Started with Entity Framework 6 Code First using MVC 5.

Des applications de Windows Platform (UWP) universelle en c# ou Visual Basic peuvent utiliser le Kit de développement logiciel Microsoft Azure pour .NET pour accéder à stockage Azure et autres services Azure.Universal Windows Platform (UWP) apps in C# or Visual Basic can use the Microsoft Azure SDK for .NET to access Azure Storage and other Azure services. La classe Windows.Web.HttpClient permet la communication avec n’importe quel service RESTful.The Windows.Web.HttpClient class enables communication with any RESTful service. Pour plus d’informations, consultez comment se connecter à un serveur HTTP à l’aide de Windows.Web.Http.For more information, see How to connect to an HTTP server using Windows.Web.Http.

Stockage des données sur l’ordinateur local, l’approche recommandée consiste à utiliser SQLite, qui s’exécute dans le même processus que l’application.For data storage on the local machine, the recommended approach is to use SQLite, which runs in the same process as the app. Si une couche de mappage objet-relationnel (ORM) est requise, vous pouvez utiliser Entity Framework.If an object-relational mapping (ORM) layer is required, you can use Entity Framework. Pour plus d’informations, consultez accès aux données dans le centre de développement Windows.For more information, see Data access in the Windows Developer Center.

Si vous vous connectez aux services Azure, veillez à télécharger la dernière version outils du SDK Azure.If you are connecting to Azure services, be sure to download the latest Azure SDK tools.

Fournisseurs de donnéesData providers

Pour une base de données être consommable dans ADO.NET, il doit avoir un personnalisé fournisseur de données ADO.NET ou else doit exposer une interface ODBC ou OLE DB.For a database to be consumable in ADO.NET, it must have a custom ADO.NET data provider or else must expose an ODBC or OLE DB interface. Microsoft fournit un liste des fournisseurs de données ADO.NET pour les produits SQL Server, ainsi que des fournisseurs ODBC et OLE DB.Microsoft provides a list of ADO.NET data providers for SQL Server products, as well as ODBC and OLE DB providers.

Modélisation des donnéesData modeling

Dans .NET, vous avez trois possibilités pour la modélisation et la manipulation de données en mémoire une fois que vous l’avez récupéré à partir d’une source de données :In .NET, you have three choices for modeling and manipulating data in memory after you have retrieved it from a data source:

Entity Framework la technologie Microsoft ORM préférée.Entity Framework The preferred Microsoft ORM technology. Vous pouvez l’utiliser pour programmer par rapport aux données relationnelles comme des objets .NET.You can use it to program against relational data as first-class .NET objects. Pour les nouvelles applications, il doit être le premier choix de valeur par défaut lorsqu’un modèle est requis.For new applications, it should be the default first choice when a model is required. Elle nécessite la prise en charge personnalisée à partir du fournisseur ADO.NET sous-jacent.It requires custom support from the underlying ADO.NET provider.

LINQ to SQL un mappeur objet-relationnel de génération antérieure.LINQ to SQL An earlier-generation object-relational mapper. Il fonctionne bien pour les scénarios moins complexes, mais n’est plus en cours de développement.It works well for less complex scenarios but is no longer in active development.

Jeux de données le plus ancien de ces trois technologies de modélisation.Datasets The oldest of the three modeling technologies. Il est conçu principalement pour le développement rapide d’applications de « formulaires de données » dans lequel vous ne sont pas traiter de grandes quantités de données ou effectuer des requêtes complexes ou des transformations.It is designed primarily for rapid development of "forms over data" applications in which you are not processing huge amounts of data or performing complex queries or transformations. Un objet DataSet comprend des objets DataTable et DataRow logiquement semblables aux objets de base de données SQL beaucoup plus que les objets .NET.A DataSet object consists of DataTable and DataRow objects that logically resemble SQL database objects much more than .NET objects. Pour les applications relativement simples basées sur des sources de données SQL, les jeux de données peut toujours être un bon choix.For relatively simple applications based on SQL data sources, datasets might still be a good choice.

Il est inutile d’utiliser ces technologies.There is no requirement to use any of these technologies. Dans certains scénarios, en particulier où les performances sont critiques, vous pouvez simplement utiliser un objet DataReader à lire à partir de la base de données et copier les valeurs dont vous avez besoin dans un objet de collection, telles que liste<T >.In some scenarios, especially where performance is critical, you can simply use a DataReader object to read from the database and copy the values that you need into a collection object such as List<T>.

C++ natifNative C++

Les applications C++ qui se connectent à SQL Server doivent utiliser le Microsoft® ODBC Driver 13.1 for SQL Server dans la plupart des cas.C++ applications that connect to SQL Server should use the Microsoft® ODBC Driver 13.1 for SQL Server in most cases. Si les serveurs sont liés, OLE DB est nécessaire et que vous utilisez le SQL Server Native Client.If the servers are linked, then OLE DB is necessary and for that you use the SQL Server Native Client. Vous pouvez accéder aux autres bases de données à l’aide de ODBC ou pilotes OLE DB directement.You can access other databases by using ODBC or OLE DB drivers directly. ODBC est l’interface actuelle de la base de données standard, mais la plupart des systèmes de base de données fournissent des fonctionnalités personnalisées qui ne sont pas accessibles via l’interface ODBC.ODBC is the current standard database interface, but most database systems provide custom functionality that can't be accessed through the ODBC interface. OLE DB est une technologie d’accès aux données COM héritée qui est toujours pris en charge mais non recommandée pour les nouvelles applications.OLE DB is a legacy COM data-access technology that is still supported but not recommended for new applications. Pour plus d’informations, consultez accès aux données dans Visual C++.For more information, see Data Access in Visual C++.

Les programmes C++ qui utilisent des services REST peuvent utiliser le C++ REST SDK.C++ programs that consume REST services can use the C++ REST SDK.

Les programmes C++ qui fonctionnent avec Microsoft Azure Storage peuvent utiliser le Client de stockage Microsoft Azure.C++ programs that work with Microsoft Azure Storage can use the Microsoft Azure Storage Client.

Modélisation des données—Visual Studio ne fournit pas d’une couche ORM pour C++.Data modeling—Visual Studio does not provide an ORM layer for C++. ODB est un ORM open source populaires pour C++.ODB is a popular open-source ORM for C++.

Pour en savoir plus sur la connexion aux bases de données à partir d’applications C++, consultez Visual Studio data tools pour C++.To learn more about connecting to databases from C++ apps, see Visual Studio data tools for C++. Pour plus d’informations sur les technologies d’accès aux données héritées Visual C++, consultez accès aux données.For more information about legacy Visual C++ data-access technologies, see Data Access.

JavaScriptJavaScript

JavaScript dans Visual Studio est un langage de premier ordre pour la création des applications multiplateformes, les applications UWP, les services cloud, les sites Web et les applications web.JavaScript in Visual Studio is a first-class language for building cross-platform apps, UWP apps, cloud services, websites, and web apps. Vous pouvez utiliser Bower, Grunt, Gulp, npm et NuGet à partir de Visual Studio pour installer vos bibliothèques JavaScript favorites et les produits de base de données.You can use Bower, Grunt, Gulp, npm, and NuGet from within Visual Studio to install your favorite JavaScript libraries and database products. Se connecter au stockage Azure et services en téléchargeant les kits de développement logiciel à partir de la site Web Azure.Connect to Azure storage and services by downloading SDKs from the Azure website. Edge.js est une bibliothèque qui se connecte côté serveur JavaScript (Node.js) à des sources de données ADO.NET.Edge.js is a library that connects server-side JavaScript (Node.js) to ADO.NET data sources.

PythonPython

Installer prennent en charge de Python dans Visual Studio pour créer des applications Python.Install Python support in Visual Studio to create Python applications. La documentation Azure comporte plusieurs didacticiels sur la connexion aux données, notamment les éléments suivants :The Azure documentation has several tutorials on connecting to data, including the following:

Plateforme Microsoft AI—fournit une introduction au cloud intelligent Microsoft, y compris la prise en charge pour l’Internet des objets et la Suite d’Analytique Cortana.Microsoft AI platform—Provides an introduction to the Microsoft intelligent cloud, including Cortana Analytics Suite and support for Internet of Things.

Microsoft Azure Storage—décrit le stockage Azure et comment créer des applications à l’aide des objets BLOB Azure, les tables, les files d’attente et les fichiers.Microsoft Azure Storage—Describes Azure Storage, and how to create applications by using Azure blobs, tables, queues, and files.

Base de données SQL Azure—décrit comment se connecter à la base de données SQL Azure, une base de données relationnelle en tant que service.Azure SQL Database—Describes how to connect to Azure SQL Database, a relational database as a service.

SQL Server Data Tools—décrit les outils qui simplifient la conception, exploration, de test et de déploiement connecté aux données des applications et bases de données.SQL Server Data Tools—Describes the tools that simplify design, exploration, testing, and deploying of data-connected applications and databases.

ADO.NET—décrit l’architecture ADO.NET et comment utiliser les classes ADO.NET pour gérer les données d’application et interagir avec des sources de données et XML.ADO.NET—Describes the ADO.NET architecture and how to use the ADO.NET classes to manage application data and interact with data sources and XML.

ADO.NET Entity Framework—décrit comment créer des applications de données qui permettent aux développeurs de programmer par rapport à un modèle conceptuel au lieu de directement par rapport à une base de données relationnelle.ADO.NET Entity Framework—Describes how to create data applications that allow developers to program against a conceptual model instead of directly against a relational database.

WCF Data Services 4.5—explique comment utiliser Services de données WCFWCF Data Services pour déployer des services de données sur le web ou un intranet qui implémentent le Open Data Protocol (OData).WCF Data Services 4.5—Describes how to use Services de données WCFWCF Data Services to deploy data services on the web or an intranet that implement the Open Data Protocol (OData).

Les données dans les Solutions Office—contient des liens vers des rubriques qui expliquent comment fonctionnent les données dans les solutions Office.Data in Office Solutions—Contains links to topics that explain how data works in Office solutions. Cela inclut des informations sur la programmation orientée schéma, la mise en cache des données et accès aux données côté serveur.This includes information about schema-oriented programming, data caching, and server-side data access.

LINQ (Language-Integrated Query)—décrit les fonctionnalités de requête intégrées dans c# et Visual Basic et le modèle commun pour interroger des bases de données relationnelles, les documents XML, les jeux de données et les collections en mémoire.LINQ (Language-Integrated Query)—Describes the query capabilities built into C# and Visual Basic, and the common model for querying relational databases, XML documents, datasets, and in-memory collections.

Outils XML dans Visual Studio—aborde l’utilisation des fonctionnalités de .NET XML de données, le débogage XSLT, XML et l’architecture de requête XML.XML Tools in Visual Studio—Discusses working with XML data, debugging XSLT, .NET XML features, and the architecture of XML Query.

Documents et données XML—fournit une vue d’ensemble à un ensemble complet et intégré de classes qui fonctionnent avec des documents XML et des données dans .NET.XML Documents and Data—Provides an overview to a comprehensive and integrated set of classes that work with XML documents and data in .NET.