2012-01-13 71 views
0

我有大量的圖像(超過16,000)在SQL中,我需要導出到文件。我已閱讀此線程How can I export images from SQL Server to a file on disk?,這似乎是我想要做的,但答案指的是此線程How to save an image from SQL Server to a file using SQL實際上是通過電子郵件發送圖像而不是保存它們。在SQL方面相當缺乏經驗,我很難做到這一點。我想知道這是否可以在SQL中完成,或者如果我需要編寫一個.NET應用程序來提取信息。從sql導出圖像到文件

我這樣的思考:

select imageName, image from table where blah blah blah --(returns table of over 16,000 images). 
--do whatever it takes to save each image in a file with filename = imageName 

任何幫助深表感謝。

回答

1

您可以使用bcp Utility來做到這一點。

+0

這聽起來像我想要的解決方案,但我沒有cmdshell proc的執行權限。我得到了一個要求,但我沒有在這個地方寄予厚望。在這一點上,我正在努力爭取獲得單個圖像的導出,儘管我確信它能夠正常工作,但我現在還不知道如何才能使其工作。 – 2012-01-13 16:42:02

+0

另一個選項可能是'openrowset'(http://thiagsundar.wordpress.com/export-data-to-text-file/),但是如果您處於受限制的環境中,則可能需要一些額外的權限才能編寫這些文件。 – ChristopheD 2012-01-14 10:38:26

1

聽起來像一個ETL(提取轉換加載)過程。在這種情況下,我建議http://hibernatingrhinos.com/open-source/rhino-etl。構建流程並處理操作。 rhino.etl是MSSqls DTS和SSIS的替代品。

我看到的最大的問題是,您不希望一次將所有16000條記錄加載到內存中,而是一次通過一條記錄流來保持內存消耗低。