Partager via


Gestion des objets LOB (Large OBject)

Mis à jour : 5 décembre 2005

L'exemple HandlingLOBUsingCLR pour SQL Server 2005 illustre le transfert d'objets LOB (Large OBjects) entre SQL Server et un système de fichiers qui est disponible au serveur au moyen de procédures stockées du Common Language Runtime (CLR). Cet exemple montre comment accéder à des fichiers dans du code côté serveur et comment appeler ensuite des requêtes dynamiques et des procédures stockées à partir de procédures stockées CLR. Il montre également comment inscrire et désinscrire des méthodes et des assemblys CLR à l'aide de Transact-SQL.

Le répertoire d'installation par défaut est lecteur:\Program Files\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\HandlingLOBUsingCLR.

Scénario

Un développeur souhaite copier des images entre SQL Server et le système de fichiers sur le serveur.

Langages

Transact-SQL, Visual C# et Visual Basic.

Fonctionnalités

L'exemple HandlingLOBUsingCLR utilise les fonctionnalités suivantes de SQL Server :

Domaine d'application Fonctionnalités

Global

Procédures stockées CLR ; appel de procédures stockées Transact-SQL à partir de procédures stockées CLR ; type de données VARBINARY(MAX).

Configuration préalable requise

Avant d'exécuter cet exemple, assurez-vous que les logiciels suivants sont installés :

  • SQL Server 2005 ou SQL Server 2005 Express Edition (SQL Server Express). Vous pouvez obtenir SQL Server Express gratuitement à partir du site Web SQL Server 2005 Express Edition Documentation et exemples.
  • Base de données AdventureWorks fournie avec SQL Server 2005 et également disponible sur le site Web du SQL Server Developer Center (Centre des développeurs SQL Server).
  • Les exemples moteur de base de données SQL Server 2005. Ces exemples accompagnent SQL Server 2005. Vous pouvez télécharger la dernière version des exemples sur le site Web du SQL Server Developer Center (Centre des développeurs SQL Server).
  • Kit de développement .NET Framework SDK 2.0 ou Microsoft Visual Studio 2005. Vous pouvez obtenir gratuitement le Kit de développement .NET Framework SDK. Consultez Installation du SDK .NET Framework.

Génération de l'exemple

Si vous n'avez pas déjà créé le fichier de clé de nom fort ExternalSampleKey.snk, utilisez la procédure suivante pour générer ce fichier.

Pour générer un fichier de clé de nom fort

  1. Ouvrez une invite de commandes Microsoft Visual Studio 2005. Cliquez sur Démarrer, pointez successivement sur Tous les programmes, sur Microsoft Visual Studio 2005 et sur Outils Visual Studio, puis cliquez sur Invite de commandes de Visual Studio 2005.

    - ou -

    Ouvrez une invite de commandes de 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.

  2. À l'invite de commandes, utilisez la commande CD (changer de répertoire) pour remplacer le dossier actif de la fenêtre d'invite de commandes par le dossier dans lequel les exemples sont installés.

    ms160944.note(fr-fr,SQL.90).gifRemarque :
    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 Exemples. Si l'emplacement d'installation par défaut a été utilisé, les exemples se trouvent dans <system_drive>:\Program Files\Microsoft SQL Server\90\Samples.
  3. À l'invite de commandes, exécutez la commande suivante pour générer le fichier de clé :

    sn -k ExternalSampleKey.snk

    ms160944.note(fr-fr,SQL.90).gifImportant :
    Pour plus d'informations sur la paire de clés de nom fort, consultez l'article de sécurité concernant les noms forts et la sécurité dans .NET Framework, dans le Centre de développement .NET sur MSDN.

Pour générer l'exemple, procédez comme suit :

Génération de l'exemple

  1. Compilez l'exemple au moyen de Visual Studio 2005 et de la solution Visual Studio fournie, ou à l'aide de Microsoft MSBuild disponible dans le Kit de développement logiciel .NET Framework SDK 2.0. À partir de l'invite de commandes, exécutez une commande semblable à celle-ci :

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\HandlingLOBUsingCLR.sln

  2. Assurez-vous que la base de données AdventureWorks est installée.

  3. Si vous n'avez pas installé les exemples du moteur de base de données SQL Server à l'emplacement par défaut, modifiez le chemin d'accès dans la section CREATE ASSEMBLY du script dans Scripts\InstallCS.sql et Scripts\InstallVB.sql afin de désigner l'emplacement d'installation des exemples.

  4. 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.

  5. Ouvrez le fichier scripts\installCS.sql ou scripts\installVB.sql, selon que vous avez compilé le projet Visual C# ou Visual Basic, dans SQL Server Management Studio. Exécutez le script contenu dans le fichier ou exécutez une commande semblable à la suivante à l'invite de commandes :

    sqlcmd -E -I -i Scripts\InstallCS.sql

    Ce script effectue les tâches suivantes :

Exécution de l'exemple

Pour exécuter l'exemple, procédez comme suit :

Exécution de l'exemple

  1. Pour lire une image à partir d'une base de données, appelez un script semblable au suivant :

    exec GetPhotoFromDB 70, 'C:\Temp\', 'test6.gif'

    go

    Assurez-vous que le répertoire spécifié existe.

  2. Pour écrire une image dans la base de données, appelez un script semblable au suivant :

    exec PutPhotoIntoDB 70, 'C:\Temp\', 'test1.gif'

    go

    Toute erreur sera signalée dans le fichier error.log dans le répertoire spécifié. Pour voir des scripts semblables à ceux de cette procédure, consultez le fichier Scripts\test.sql.

Suppression de l'exemple

Pour supprimer l'exemple, procédez comme suit :

Suppression de l'exemple

  1. Ouvrez le fichier scripts\cleanup.sql dans Management Studio et exécutez le script que contient le fichier. Vous pouvez également exécuter la commande suivante à l'invite de commandes :

    sqlcmd -E -I -i Scripts\cleanup.sql

Commentaires

Pour que cet exemple fonctionne correctement, le CLR pour SQL Server 2005 ou SQL Server 2005 Express Edition 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.

Voir aussi

Tâches

Gestion d'objet LOB (Large Binary Object) avec ADO.NET

Concepts

Exemples de programmabilité CLR

Autres ressources

Database Engine .NET Framework Programming

Aide et Informations

Assistance sur SQL Server 2005

Historique des modifications

Version Historique

5 décembre 2005

Contenu modifié :
  • Modification des instructions concernant la génération d'un fichier de clé, y compris le nom et l'emplacement de ce fichier.