Mis en ligne le 11/05/2005 - Publié en Juin 2004
Le plein de conseils...
Utilisation de l’objet SqlCommand pour importer des BLOB
Une alternative à l’utilisation de l’objet DataSet pour importer
des objets BLOB (binary large object) consiste à employer
l’objet ADO.NET Command avec une procédure stockée.
Cette méthode ne nécessite pas d’objet DataSet sur le client,
mais requiert une procédure stockée pré-existante sur le système
SQL Server. Lorsque vous employez des paramètres de
procédure stockée pour accéder à des BLOB, ayez à l’esprit
que le paramètre du BLOB doit figurer en dernier dans l’appel
à la procédure stockée.
Le code suivant illustre une procédure simple intitulée
p_insertimage, qui accepte un paramètre de type de données
image. Le code insère le paramètre dans la table
BLOBTable. (Le schéma de cette table est disponible sur le
site www.itpro.fr Club Abonnés.)
CREATE PROCEDURE dbo.p_insertimage ( @image image) AS SET NOCOUNT ON INSERT INTO BLOBTable (blob_object) VALUES(@image) RETURN GO
Le listing 4 présente le code C# qui appelle cette procédure
stockée. Ce code utilise un objet OleDbConnection
pour ouvrir une connexion vers SQL Server. Il crée ensuite
un nouvel objet FileStream nommé fs, qui ouvre le fichier homer.
jpg et en lit le contenu dans le tableau d’octets nommé
imagefile. Un objet OleDbCommand cmd est alors créé et va
exécuter la procédure stockée p_insertimage, passant les
données BLOB à p_insertimage en tant que paramètres.
L’accès à l’objet BLOB n’est pas limité au seul espace de
nom System.Data.SqlClient. Vous pouvez aussi accéder aux
BLOB en utilisant l’espace de nom System.Data.OleDb,
comme illustré ici, ou encore les espaces de nom
System.Data.OracleClient et System.Data.Odbc.
Téléchargez cette ressource
Guide de Sécurité IA et IoT
Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.