1
問題:我必須從MS SQL(PDF)中的varbinary列中提取數據。如何從Microsoft SQL中的varbinary(Max)中提取數據
我已經使用這個腳本
DECLARE @SQLIMG VARCHAR(MAX),
@IMG_PATH VARBINARY(MAX),
@TIMESTAMP VARCHAR(MAX),
@ObjectToken INT
DECLARE IMGPATH CURSOR FAST_FORWARD FOR
SELECT csl_CompanyLogo from mlm_CSCompanySettingsLocalizations
OPEN IMGPATH
FETCH NEXT FROM IMGPATH INTO @IMG_PATH
WHILE @@FETCH_STATUS = 0
BEGIN
SET @TIMESTAMP = 'd:\' + replace(replace(replace(replace(convert(varchar,getdate(),121),'-',''),':',''),'.',''),' ','') + '.bmp'
PRINT @TIMESTAMP
PRINT @SQLIMG
EXEC sp_OACreate 'ADODB.Stream', @ObjectToken OUTPUT
EXEC sp_OASetProperty @ObjectToken, 'Type', 1
EXEC sp_OAMethod @ObjectToken, 'Open'
EXEC sp_OAMethod @ObjectToken, 'Write', NULL, @IMG_PATH
EXEC sp_OAMethod @ObjectToken, 'SaveToFile', NULL, @TIMESTAMP, 2
EXEC sp_OAMethod @ObjectToken, 'Close'
EXEC sp_OADestroy @ObjectToken
FETCH NEXT FROM IMGPATH INTO @IMG_PATH
END
CLOSE IMGPATH
DEALLOCATE IMGPATH
從這裏Script to save varbinary data to disk
但現在我不知道,我怎樣才能使文件名更具可讀性?例如使用來自id列的記錄。
P.s.我應該放置tsql標籤嗎?
你什麼意思通過讀取多少?你想如何看你的文件名?你可能想使用這個ID列在哪裏? – BeanFrog
因此,例如:我有文件'FileName'列和'vabinary'列。我想從'varbinary'中提取文件並將它們命名爲'FileName'。 –