在sql数据库中存储word文档的图像



我想在sql数据库中存储word文档的所有图像。我找到了几个关于如何通过InlineShapes集合解析图像的代码示例,它们工作得很好。但是,我现在缺少一个关于如何在sql server映像列中存储图像的示例。

任何人可以张贴一个例子,它存储在数据库中的InlineShape对象。使用commandrecordset对象?

更新:下面是代码

Sub SavePictures()
Dim SQL As String
Dim RS As ADODB.Recordset
Dim cnBon As ADODB.Connection
Dim intCount As Integer
Dim i As Integer
SQL = "Select [ID] ,[Datei] ,[Seite] ,[Bild] from Bilder Where 1=0"
strConn = "working Connection string"
Set cnBon = New ADODB.Connection
cnBon.Open strConn

Set RS = CreateObject("ADODB.Recordset")
RS.Open SQL, cnBon, adOpenKeyset, adLockOptimistic, adCmdText

    For i = 1 To InlineShapes.Count
        If InlineShapes.Item(i).Type = wdInlineShapePicture Then
            RS.AddNew

            RS("Datei") = ActiveDocument.Name
            RS("Seite") = i 
            'This is where I'm stuck. How do I Access the Picture to save it in the Recordset?
            RS("Bild") = InlineShapes.Item(i)
            RS.Update
        End If
    Next i

RS.Close
cnBon.Close
Set RS = Nothing
Set cbbon = Nothing
End Sub

下面是工作代码

Sub SavePictures()
Dim SQL As String
Dim RS As ADODB.Recordset
Dim cnBon As ADODB.Connection
Dim intCount As Integer
Dim i As Integer
SQL = "Select [ID] ,[Datei] ,[Seite] ,[Bild] from Bilder Where 1=0"
strConn = "working Connection string"
Set cnBon = New ADODB.Connection
cnBon.Open strConn

Set RS = CreateObject("ADODB.Recordset")
RS.Open SQL, cnBon, adOpenKeyset, adLockOptimistic, adCmdText

    For i = 1 To InlineShapes.Count
        If InlineShapes.Item(i).Type = wdInlineShapePicture Then
            RS.AddNew

            RS("Datei") = ActiveDocument.Name
            RS("Seite") = i 
            'This is where I'm stuck. How do I Access the Picture to save it in the Recordset?
            RS("Bild") = InlineShapes.Item(i).Range.EnhMetaFileBits
            RS.Update
        End If
    Next i

RS.Close
cnBon.Close
Set RS = Nothing
Set cbbon = Nothing
End Sub

最新更新