> Tech > Annexe 2 : Utiliser l’objet SqlCommand pour importer des BLOB

Annexe 2 : Utiliser l’objet SqlCommand pour importer des BLOB

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Le rédacteur technique de SQL Server Magazine, Bob Pfeiff de Microsoft, a suggéré une autre méthode d'utilisation de l'objet DataSet pour importer des BLOB : en utilisant l'objet ADO.NET Command avec une procédure stockée. Cette méthode ne vous demande pas d'utiliser un DataSet sur le client, mais elle demande une

Annexe 2 : Utiliser l’objet SqlCommand pour importer des BLOB

procédure
stockée pré-existante sur le système SQL Server.
Quand vous utilisez des paramètres de procédure
stockée pour accéder à  des BLOB, souvenez-vous
que le paramètre BLOB doit toujours être le dernier
dans l’appel adressé à  la procédure stockée.
Le code suivant montre une procédure stockée
simple nommée p_insertimage qui accepte
un paramètre de type de donnée d’image. Le code
insère le paramètre dans la table BLOBTable.
(Vous trouverez le schéma de cette table dans
l’article principal.)

CREATE PROCEDURE dbo.p_insertimage
( @image image)
AS
SET NOCOUNT ON
INSERT INTO BLOBTable (blob_object)
VALUES(@image)
RETURN
GO

Le listing A montre le code C# qui appelle cette procédure
stockée. Le code utilise un objet OleDbConnection
pour ouvrir une connexion avec SQL Server. Ensuite, le code
crée un nouvel objet FileStream nommé fs qui ouvre le fichier
homer.jpg et lit le contenu de ce fichier dans la matrice d’octets
nommée imagefile. Ensuite, le code crée un objet
OleDbCommand nommé cmd qui exécutera la procédure
stockée p_insertimage, passant les données BLOB à  p_insertimage
comme un paramètre.
L’accès BLOB n’est pas limité au simple namespace
System.Data.SqlClient. Vous pouvez aussi accéder aux BLOB
en utilisant le namespace System.Data.OleDb, comme je le
montre ici, ainsi que les namespaces System.Data.Oracle-
Client et System.Data.Odbc.

Téléchargez cette ressource

Percer le brouillard des rançongiciels

Percer le brouillard des rançongiciels

Explorez les méandres d’une investigation de ransomware, avec les experts de Palo Alto Networks et Unit 42 pour faire la lumière dans la nébuleuse des rançongiciels. Plongez au cœur de l’enquête pour comprendre les méthodes, les outils et les tactiques utilisés par les acteurs de la menace. Découvrez comment prévenir les attaques, les contrer et minimiser leur impact. Des enseignements indispensables aux équipes cyber.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010