Delphi以二进制形式保存文件到ACCESS数据库

Delphi以二进制形式保存文件到ACCESS数据库,第1张

如果是这样,那就用DELPHI的OLE控件打开看看不过,OLE数据类型字段它在ACCESS表中,显示的是:长二进制数据打开表如果该字段的值显示的长二进制数据,那就是各种文件了,凡是WIN系统能够运行的文件都可以保存在OLE类型的字段中,

'题主可以参考下列示例代码:

Private Sub Command0_Click()

    '注意代码需要先引用ADO类库25或以上版本

    Dim cn As New ADODBConnection,strCn as String

    Dim rs As New ADODBRecordset

    Dim strm As New ADODBStream

    strCn = "Provider=MicrosoftJetOLEDB40;Data Source=D:\MyDBmdb"

    cnOpen strCn

    rsCursorLocation = adUseClient

    '打开ADO流对象

    With strm

        Type = adTypeBinary  '二进制模式

        Open

    End With

    '打开记录集

    rsOpen "[100jluwood]", cn, adOpenKeyset, adLockOptimistic  

    '添加一条新记录,字段名是虚构的,请改为实际字段名

    rsAddNew

    rs!F_id = "001"

    rs!F_Name = "MyWord"

    strmLoadFromFile "C:\MyWorddoc" '读取Word文件

    rs!file = strmRead     '存入Word文件

    rsUpdate  '保存新增

    rsClose

    Set rs=Nothing

    cnClose

    Set cn=Nothing

    

End Sub

protected void Button1_Click(object sender, EventArgs e)

        {

 

            //FileInfo thefile = new FileInfo(@"D:\立项依据doc");

            FileStream fsDoc = FileOpenRead(@"D:\立项依据doc");

 

            DateTime dtnow = DateTimeNow;

            string filename = dtnowToString("yyyyMMdd")+"doc";

 

            byte[] buffer=new byte[fsDocLength];

 

            fsDocRead(buffer,0,(int)fsDocLength);

            connOpen();

            string sqlCmd = @"Insert into MyUploadTable(filename,filesize,filedata,ProjectID,IsAuditActivePage)

                              Values(@filename,@filesize,@filedata,@ProjectID,1)";

            SqlCommand Cmd = new SqlCommand(sqlCmd,conn);

            CmdParametersAdd("@filename",SqlDbTypeVarChar)Value=filename;

            CmdParametersAdd("@filesize",SqlDbTypeBigInt)Value=fsDocLength;

            CmdParametersAdd("@filedata",SqlDbTypeImage)Value=buffer;

            CmdParametersAdd("@ProjectID",SqlDbTypeInt)Value=2;

            CmdExecuteNonQuery();

            fsDocClose();

            connClose();

 

             

        }

dim

mst

as

stream

dim

rs

as

adodbrecordset

----------------------------------------

set

mst

=

new

adodbstream

msttype

=

adtypebinary

'二进制类型

mstopen

mstloadfromfile

mystr

'加载,mystr为路径

----------------------------------------

rsfields("images")=

mstread

'保存到数据库

这是保存的主要代码

以上就是关于Delphi以二进制形式保存文件到ACCESS数据库全部的内容,包括:Delphi以二进制形式保存文件到ACCESS数据库、如何用VB将word文档已二进制的形式存Access数据库里 100jluwood、怎样word文档以二进制流的形式存入数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9293230.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存