【问题标题】:Insert file into mysql Blob将文件插入 mysql Blob
【发布时间】:2016-12-20 15:56:13
【问题描述】:

我尝试在 blob 字段中插入 Open Office 文档。 为此,我尝试

INSERT INTO my_table (stamp, docFile) VALUES (NOW(), LOAD_FILE('/tmp/my_file.odt'));

这在 Windows 上运行良好,但在 Mac Os 上,文件未加载到 docFile 字段。

有人有这方面的经验吗?

谢谢

【问题讨论】:

  • 试试 [in this similar question][1] [1] 的建议:stackoverflow.com/questions/8229951/load-file-doesnt-work
  • 我已经按照您的建议做了,这就是我发帖的原因。谢谢。如果我使用 phpmyAdmin 或 Navicate 之类的工具来完成相同的任务,一切都会很好。
  • 您是否收到任何错误消息,请检查您是否有权从该目录上传文件
  • 我检查了权限,一切都很好。我使用zend,我做了2个测试。第一个我将文件夹和文件放在 webroot 上,没有结果,第二个我放置文件夹,而在 mysql root 上:相同的结果,没有。如果我对 phpMyAdmin 执行相同操作,则文件将加载到 mysql 上。
  • 你在使用远程mysql服务器吗?该文件必须在服务器上,而不是客户端上。

标签: mysql


【解决方案1】:

File.separator/\,用于分割特定文件的路径。例如在 Windows 上是\C:\Documents\Test。但在 Mac 上是/

所以使用File.separator 而不是/\,那么它适用于Mac 和Windows。

您可以更新类型为“blob”的列值

UPDATE `TableName` SET `ColumnName`=LOAD_FILE('FilePath/FileName.bin') WHERE `YourCondition` 
// FilePath -> C:/foldername/filename.bin

【讨论】:

    猜你喜欢
    • 2015-07-22
    • 2015-11-03
    • 2021-02-17
    • 2014-11-15
    • 2019-09-25
    • 2012-05-30
    • 1970-01-01
    相关资源
    最近更新 更多