【问题标题】:Inserting two images into database将两张图片插入数据库
【发布时间】:2017-11-20 08:26:41
【问题描述】:

我正在尝试将两个图像插入到我的 SQL Server 2012 数据库中。插入一张图片有效,但插入两张图片无效:

插入一张图片:

BEGIN TRY
    SET @sql = 'INSERT INTO [dbo].[PicturesCamera1] (Name, [OriginalBitmap]) 
                    SELECT ''' + @CameraPicture1 + ''', 
                BulkColumn FROM Openrowset(Bulk''' + @ImagePath + @CameraPicture1 + '.bmp' + ''', Single_Blob) as Pic'

                INSERT INTO #tmpBus 
                    EXEC sp_executesql @sql
END TRY
BEGIN CATCH
    SET @resulttext = 'File not found. Picture seems not to be available on camera 1 cache any more.';
END CATCH

插入两张图片:

BEGIN TRY
    SET @sql = 'INSERT INTO [dbo].[PicturesCamera1] (Name, [OriginalBitmap], [PreviewJpg]) 
                SELECT ''' + @CameraPicture1 + ''', 
                BulkColumn FROM Openrowset(Bulk''' + @ImagePath + @CameraPicture1 + '.bmp' + ''', Single_Blob) as Pic,
                BulkColumn FROM Openrowset(Bulk''' + @ImagePath + @CameraPicture1 + '.jpg' + ''', Single_Blob) as Pic2'

    INSERT INTO #tmpBus 
        EXEC sp_executesql @sql
END TRY
BEGIN CATCH
    SET @resulttext = 'File not found. Picture seems not to be available on camera 1 cache any more.';
END CATCH

【问题讨论】:

标签: sql-server sql-server-2012 bulkinsert


【解决方案1】:

试试看

INSERT INTO [PicturesCamera1] (Name, [OriginalBitmap], [PreviewJpg]) 
    SELECT
      '...', 
      (SELECT BulkColumn FROM Openrowset(Bulk '...', Single_Blob) q) Pic1,
      (SELECT BulkColumn FROM Openrowset(Bulk '...', Single_Blob) q) Pic2

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-09
    • 1970-01-01
    • 1970-01-01
    • 2013-05-06
    • 2011-11-04
    • 2012-12-05
    • 2015-02-19
    相关资源
    最近更新 更多