CREATE TABLE [dbo].[ItemPics](
[Item] [VARCHAR](50) NOT NULL,
[ImageData] [varbinary](MAX) NULL,
CONSTRAINT [PK_ItemPics] PRIMARY KEY CLUSTERED
(
[Item] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
SET NOCOUNT ON
DECLARE @Item VARCHAR(100)
DECLARE db_cursor CURSOR FOR
SELECT i.item
FROM [dbo].[item] i
OPEN db_cursor
FETCH NEXT FROM db_cursor INTO @ITEM
DECLARE @i INT=1
WHILE @@FETCH_STATUS = 0
BEGIN
BEGIN TRY
DECLARE @SQL VARCHAR(MAX)
SELECT @SQL = 'INSERT dbo.ItemPics (Item, ImageData)
SELECT ''' + @ITEM +''',BulkColumn FROM OpenRowSet ( Bulk ''c:\itempics\' + --c drive local to sql server
@ITEM+ '.jpg'', Single_Blob) AS ItemPicture'
PRINT @i
EXEC (@SQL)
END TRY
BEGIN CATCH
PRINT ERROR_MESSAGE()
END CATCH
SET @i=@i+1
FETCH NEXT FROM db_cursor INTO @ITEM
END
CLOSE db_cursor
DEALLOCATE db_cursor
GO
DECLARE @sessionid uniqueidentifier
SET @sessionid = newid()
EXEC InitSessionSP @sessionid, 'sa'
UPDATE i
set picture=p.ImageData
FROM dbo.[item] i
JOIN dbo.ItemPics p ON p.item = i.item
EXEC closesessionsp @sessionid
GO
Comments