Exemple Readme_Send DataSet
Cet exemple fonctionne uniquement avec SQL Server 2005 et SQL Server 2008. Il ne fonctionnera pas avec les versions de SQL Server antérieures à SQL Server 2005.
L'exemple Send DataSet montre comment retourner un DataSet ADO.NET dans une procédure stockée CLR (Common Language Runtime) côté serveur en tant que jeu de résultats au client. Cette opération est utile lorsque, par exemple, ce type de procédure stockée remplit un DataSet à l'aide des résultats d'une requête, puis manipule les données contenues dans ce DataSet. Elle est également utile lorsque la procédure stockée crée et remplit elle-même un DataSet.
L'exemple est composé de deux classes, DataSetUtilities et TestSendDataSet La méthode SendDataSet sur la classe DataSetUtilities implémente une méthode globale pour transmettre le contenu d'une instance de DataSet au client. La méthode DoTest, définie sur la classe TestSendDataSet, s'assure que la méthode SendDataSet fonctionne en créant un DataSet et en le remplissant de données provenant de la procédure stockée Transact-SQL usp_GetTwoBOMTestData . Cette dernière exécute la procédure stockée Transact-SQL uspGetBillOfMaterials à deux reprises pour interroger de manière récursive la nomenclature de deux produits spécifiés en tant que paramètres pour la procédure stockée usp_GetTwoBOMTestData. Généralement, après avoir rempli le dataset, les données sont modifiées avant d'appeler SendDataSet pour remettre les données dans le dataset, en résultat au client. Mais, à des fins de simplicité, cet exemple retourne les données sans modification.
Répertoire d'installation : C:\Program Files\Microsoft SQL Server\100\Samples\Engine\Programmability\CLR\SendDataSet\
Les exemples SQL Server et les exemples de bases de données doivent être téléchargés et installés avant que vous ne puissiez les afficher ou les utiliser. Pour plus d'informations, consultez Considérations relatives à l'installation d'exemples de bases de données et d'exemples de code SQL Server.
Scénario
Jane travaille au service Développement de la société Adventure Works Cycles. Elle a collecté des informations dans une de ses procédures stockées CLR dans un DataSet, et souhaite retourner les informations contenues dans ce DataSet à son application cliente.
Langages
Transact-SQL, Visual C# et Visual Basic.
Fonctionnalités
L'exemple Send DataSet utilise les fonctionnalités suivantes de SQL Server.
Domaine d'application | Fonctionnalités |
---|---|
Global |
CLR, métadonnées, DataSet, procédures stockées, CTE |
Configuration requise
Avant d'exécuter cet exemple, assurez-vous que les logiciels suivants sont installés sur votre ordinateur :
- (Microsoft, SQL Server ou SQL Server Express). Vous pouvez vous procurer gratuitement SQL Server Express à partir du site Web SQL Server Express Documentation and Samples (en anglais).
- Base de données AdventureWorks qui est disponible sur le site Web du Centre pour les développeurs Microsoft SQL Server.
- Exemples Moteur de base de données SQL Server qui sont disponibles sur le site Web du Centre pour les développeurs Microsoft SQL Server.
- Kit de développement logiciel .NET Framework 2.0 (SDK) ou Microsoft Visual Studio 2005. Vous pouvez vous procurer gratuitement le Kit de développement logiciel .NET Framework (SDK). Consultez Installation de la documentation .NET Framework..
Génération de l'exemple
Si vous n'avez pas encore créé un fichier de clé de nom fort, utilisez la procédure suivante pour générer ce fichier.
Pour générer un fichier de clé de nom fort
Ouvrez une invite de commandes Microsoft Visual Studio 2005. Cliquez sur Démarrer, pointez sur Tous les programmes et sur Kit de développement Microsoft .NET Framework SDK 2.0, puis cliquez sur Invite de commandes du Kit de développement SDK.
-- ou --
Ouvrez une invite de commandes Microsoft .NET Framework. Cliquez sur Démarrer, pointez sur Tous les programmes et sur Kit de développement Microsoft .NET Framework SDK 2.0, puis cliquez sur Invite de commandes du Kit de développement SDK.
Utilisez la commande CD (changer de répertoire) pour remplacer le dossier actif dans la fenêtre de l'invite de commandes par le dossier dans lequel les exemples sont installés.
Remarque : Pour déterminer le dossier dans lequel se trouvent les exemples, cliquez sur Démarrer, pointez successivement sur Tous les programmes, sur Microsoft SQL Server 2005 et sur Documentation et didacticiels puis cliquez sur le répertoire Samples. Si l'emplacement d'installation par défaut a été utilisé, les exemples se trouvent dans <lecteur_système>:\Program Files\Microsoft SQL Server\100\Samples. À l'invite de commandes, exécutez la commande suivante pour générer le fichier de clé :
sn -k SampleKey.snk
Important : Pour plus d'informations sur la paire de clés avec nom fort, consultez « Security Briefs: Strong Names and Security in the .NET Framework » (en anglais) dans le Centre de Développement du .NET sur MSDN.
Pour générer l'exemple Send DataSet
Compilez l'exemple à l'aide de Visual Studio 2005 et de la solution Visual Studio fournie, ou bien de Microsoft MSBuild qui est inclus dans le Kit de développement .NET Framework SDK 2.0. À une invite de commandes, exécutez une commande présentant l'aspect suivant :
msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\SendDataSet.sln
Vérifiez que la base de données AdventureWorks est installée.
Si vous n'avez pas installé les exemples pour le moteur de base de données SQL Server à l'emplacement par défaut, modifiez le chemin d'accès dans la partie CREATE ASSEMBLY des scripts dans les fichiers Scripts\InstallCS.sql et Scripts\InstallVB.sql de façon à désigner l'emplacement où vous avez installé ces exemples.
Si vous n'êtes pas un administrateur de l'instance de SQL Server que vous utilisez, demandez à un administrateur de vous accorder l'autorisation CreateAssembly pour effectuer l'installation.
Ouvrez le fichier scripts\installCS.sql ou scripts\installVB.sql, selon que vous avez compilé le projet Visual C# ou le projet Visual Basic, dans Microsoft SQL Server Management Studio. Exécutez le script contenu dans le fichier ou exécutez une commande présentant l'aspect suivant dans une fenêtre d'invite de commandes :
sqlcmd -E -I -i Scripts\InstallCS.sql
Exécution de l'exemple
Pour exécuter l'exemple Send DataSet
Ouvrez le fichier scripts\test.sql dans Management Studio et exécutez le script que contient le fichier. Vous pouvez aussi exécuter la commande suivante dans une fenêtre d'invite de commandes :
sqlcmd -E -I -i Scripts\test.sql
Suppression de l'exemple
Pour supprimer l'exemple Send DataSet
Ouvrez le fichier scripts\cleanup.sql dans Management Studio et exécutez le script que contient le fichier. Vous pouvez aussi exécuter la commande suivante dans une fenêtre d'invite de commandes :
sqlcmd -E -I -i Scripts\cleanup.sql
Commentaires
Pour que cet exemple fonctionne correctement, le CLR pour SQL Server ou SQL Server Express doit être activé.
Les exemples sont fournis à titre éducatif uniquement. Ils ne sont pas destinés à être utilisés dans un environnement de production et n'ont pas été testés à cet usage. Microsoft ne fournit aucun support technique pour ces exemples. Les exemples d'applications et les assemblys ne doivent pas être utilisés avec votre base de données SQL Server de production ou votre serveur de rapports, ou y être connectés, sans l'autorisation de l'administrateur système.