none
ODBC存储二进制流至SQL Server RRS feed

  • 问题

  • 我现在已经能将一个二进制文件存入数据库。

    INSERT INTO TestTable(Picture) VALUES(select * from openrowset(bulk 'E:/1.jpg', SINGLE_BLOB) as data)

    但还不知道如何把内存中的二进制流(byte buffer[100])直接存入数据库,求详细代码,谢谢!

    “CDatabase、CRecordset、SQL Server 2016”


    我是快乐的小鱼^_^


    2017年2月4日 3:14

答案

  • Hi,

    感谢在MSDN论坛发帖。

    >>但还不知道如何把内存中的二进制流(byte buffer[100])直接存入数据库,求详细代码,谢谢!

    “CDatabase、CRecordset、SQL Server 2016”

    据我所知,MFC暂时还不支持这种用法。只能将二进制流转化为文件或者图片类型存入SQL中。

    不过在.Net Framework下有SqlCommand类可以帮助你实现该功能。具体代码可以参考以下代码段:

    using(SqlCommand cmd = new SqlCommand("INSERT INTO mssqltable(varbinarycolumn) VALUES (@binaryValue)", conn))
    {
        cmd.Parameters.Add("@binaryValue", SqlDbType.VarBinary, nByteSize).Value = arraytoinsert;
        cmd.ExecuteNonQuery();
    }

    希望可以帮助到你。

    Best Regards,
    Sera Yu


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2017年2月7日 5:51

全部回复

  • Hi,

    感谢在MSDN论坛发帖。

    >>但还不知道如何把内存中的二进制流(byte buffer[100])直接存入数据库,求详细代码,谢谢!

    “CDatabase、CRecordset、SQL Server 2016”

    据我所知,MFC暂时还不支持这种用法。只能将二进制流转化为文件或者图片类型存入SQL中。

    不过在.Net Framework下有SqlCommand类可以帮助你实现该功能。具体代码可以参考以下代码段:

    using(SqlCommand cmd = new SqlCommand("INSERT INTO mssqltable(varbinarycolumn) VALUES (@binaryValue)", conn))
    {
        cmd.Parameters.Add("@binaryValue", SqlDbType.VarBinary, nByteSize).Value = arraytoinsert;
        cmd.ExecuteNonQuery();
    }

    希望可以帮助到你。

    Best Regards,
    Sera Yu


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    2017年2月7日 5:51
  • 谢谢,那我先转成本地文件再使用吧。

    我是快乐的小鱼^_^

    2017年2月9日 3:25