Dans mon projet SQL Server Management Studio 2008, j'ai créé une table appelée
Catalog ( catalogId NOT NULL PRIMARY KEY, catalogName VARCHAR(20), CatalogImage VARBINARY(MAX) )
avec 3 inputs:
catalogId | catalogName | catalogImage 1 | jon | NULL 2 | jim | NULL 3 | joe | NULL
Je souhaite append une image par input dans ma table. La requête suivante pour insert une image, par exemple pour jon:
INSERT INTO Catalog (catalogImage) SELECT BulkColumn FROM OPENROWSET( Bulk 'C:\images\jon.bmp', SINGLE_BLOB) AS BLOB WHERE catalogId=1
produit le message d'erreur " Nom de colonne non valide" catalogId ". "
Quelle est la bonne requête?
Merci beaucoup d'avance, Greg
Puisque vous avez déjà les inputs, utilisez UPDATE au lieu de INSERT
UPDATE Catalog SET catalogImage = (SELECT BulkColumn FROM OPENROWSET( Bulk 'C:\images\jon.bmp', SINGLE_BLOB) AS BLOB) WHERE catalogId=1
(non testé aussi bien)
On dirait que vous voulez mettre à jour les lignes au lieu d'en insert de nouvelles. Essayez (non testé):
UPDATE Catalog set catalogImage = (SELECT BulkColumn FROM OPENROWSET( Bulk 'C:\images\jon.bmp', SINGLE_BLOB) AS BLOB) WHERE catalogId = 1