Foxtable(狐表)用户栏目专家坐堂 → 请教SQL数据库二进制应用的问题


  共有2018人关注过本帖树形打印复制链接

主题:请教SQL数据库二进制应用的问题

帅哥哟,离线,有人找我吗?
13315253800
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/1 17:51:00 [只看该作者]

蓝老师,我想插入多种格式的文件,插入按钮代码如下

If Tables("员工").Current Is Nothing Then

    Return

End If

Dim dr As DataRow = Tables("员工").Current.DataRow

If dr.RowState = DataRowState.Added Then '如果是新增行,必须先保存才能插入文件

    dr.Save()

End If

Dim dlg As New OpenFileDialog

dlg.Filter = "文件|*.doc;*.xls;*.pdf"

If dlg.ShowDialog =DialogResult.OK Then

    dr.SQLInsertFile("附件",dlg.FileName) '插入文件

End If



 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/1 17:53:00 [只看该作者]

插入文件的代码可以,但打开文件按钮用下面的代码,提示错误,请蓝老师指导一下

If Tables("员工").Current Is Nothing Then

    Return

End If

Dim dr As DataRow = Tables("员工").Current.DataRow

Dim fl As String = ProjectPath & dr("_Identify") & "*.doc;*.xls;*.pdf"

If dr.SQLLoadFile("附件", fl) Then '如果提取文件成功

    Dim Proc As New Process '打开文件

    Proc.File = fl

    Proc.Start()

Else

    Messagebox.Show("附件提取失败,可能并不存在附件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)

End If


[此贴子已经被作者于2023/7/1 17:55:28编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/2 20:12:00 [只看该作者]

文件不可能有多个扩展名的【"*.doc;*.xls;*.pdf"】,只能指定一个,建议把文件名(包括扩展名)也保存到数据库里,保存文件的时候取数据库的文件名

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/2 21:38:00 [只看该作者]

蓝老师,我参考多文件二进制列案例,我在“员工”表增加了“文件名”和"CRC值"两个字符列,修改了插入文件代码,最后两行代码提示错误请指导一下
If Tables("员工").Current Is Nothing Then
    Return
End If
Dim dr As DataRow = Tables("员工").Current.DataRow
If dr.RowState = DataRowState.Added Then '如果是新增行,必须先保存才能插入文件
    dr.Save()
End If
Dim dlg As New OpenFileDialog
dlg.Filter = "文件|*.doc;*.xls;*.ppt;*.docx;*.xlsx;*.pdf"
If dlg.ShowDialog = DialogResult.OK Then
    Dim fl As String = dlg.FileName
    dr.SQLInsertFile("附件", dlg.FileName) '插入文件
    dr("文件名") = FileSys.GetName(fl) '写入文件名
    dr.Save '必须先保存
    dr.DataRow.SQLInsertFile("员工", fl) '插入文件,提示错误
    dr.DataRow.SQLSetValue("CRC值", CRCCheckFile(fl)) '保存crc检验值,提示错误
End If


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/2 21:55:00 [只看该作者]

提示什么错误?

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/3 8:43:00 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/3 8:45:00 [只看该作者]

图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107304 积分:545781 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/3 8:55:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/3 9:11:00 [只看该作者]

蓝老师,按您的提示,代码可以确定,点击插入按钮,也可以出现查找文件的窗口,选中欲插入的文件后,出现如下提示:
.NET Framework 版本:4.0.30319.36543
Foxtable 版本:2022.8.18.1
错误所在事件:窗口,窗口1,Button7,Click
详细错误信息:
Column '文件名' does not belong to table 员工.

[此贴子已经被作者于2023/7/3 9:11:33编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
13315253800
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:545 积分:3969 威望:0 精华:0 注册:2018/1/3 16:03:00
  发帖心情 Post By:2023/7/3 9:20:00 [只看该作者]

提示:图片点击可在新窗口打开查看

 回到顶部
总数 23 上一页 1 2 3 下一页