以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何用SQL语句将一个xls文件,插入一个二进制列?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=154713)

--  作者:pc005637
--  发布时间:2020/9/24 15:18:00
--  如何用SQL语句将一个xls文件,插入一个二进制列?
如题,谢谢
--  作者:有点蓝
--  发布时间:2020/9/24 15:24:00
--  
Dim cmd As new SQLCommand
cmd.ConnectionName = "test"
cmd.CommandText = "Insert Into test (文件) Values(?)"
Dim ImageByte() As Byte = System.IO.File.ReadAllBytes("D:\\test.xls") \'读取文件流,并将读到的二进制数据放入数组ImageByte中,
cmd.Parameters.Add("@文件", ImageByte)
cmd.ExecuteNonQuery

--  作者:y2287958
--  发布时间:2020/9/24 15:41:00
--  
如何用SQL语句提取该文件?
--  作者:有点蓝
--  发布时间:2020/9/24 16:06:00
--  
        Dim cmd As new SQLCommand
        cmd.ConnectionName = "T"
        cmd.CommandText="select top 1 第八列 from DDDDD " \'这里第八列是二进制列
        Dim dt As DataTable = cmd.ExecuteReader
            Dim imagebytes As Byte() = dt.DataRows(0)("第八列")

--  作者:y2287958
--  发布时间:2020/9/25 8:20:00
--  
以下是引用有点蓝在2020/9/24 16:06:00的发言:
        Dim cmd As new SQLCommand
        cmd.ConnectionName = "T"
        cmd.CommandText="select top 1 第八列 from DDDDD " \'这里第八列是二进制列
        Dim dt As DataTable = cmd.ExecuteReader
            Dim imagebytes As Byte() = dt.DataRows(0)("第八列")

请教蓝版,上面代码得到二进制文件,下一步如何保存到本地呢?谢谢


--  作者:有点蓝
--  发布时间:2020/9/25 8:34:00
--  
https://docs.microsoft.com/zh-cn/dotnet/api/system.io.file.writeallbytes?view=netcore-3.1
--  作者:y2287958
--  发布时间:2020/9/25 9:57:00
--  

蓝版,有时间能否写写具体代码,我实在搞不定。


--  作者:有点蓝
--  发布时间:2020/9/25 10:04:00
--  
System.IO.File.writeAllBytes("D:\\test.xls",imagebytes )
--  作者:y2287958
--  发布时间:2020/9/25 11:33:00
--  
就差前面那个“System.IO.”,搞定了,再次谢谢蓝版。图片点击可在新窗口打开查看
--  作者:unverse
--  发布时间:2023/9/28 17:58:00
--  
有用,图片点击可在新窗口打开查看