gpt4 book ai didi

mysql - 使用 Ruby 从 MySQL 检索 BLOB 数据并将其保存为文件

转载 作者:行者123 更新时间:2023-11-29 07:37:05 25 4
gpt4 key购买 nike

我只是想知道如何使用 Ruby 检索保存在数据库(MySQL)中的 BLOB 数据,并将检索到的数据保存为特定目录中的文件。

假设我在数据库中将“abc.wav”保存为 BLOB,并且我希望 Ruby 代码从数据库中获取它并将其保存在名为“sound_files”的文件夹中。

这里有人知道怎么做吗?

编辑:截至目前,我正在使用以下代码,如下所示。问题是输出的文件大小只有“0 kb”,我猜这表明它没有正确输出。

wav_data = getWavFiles(db_ip, db_id, db_pass, db_schema)
wav_data.each do | wav |
path = "path/to/file" + wav.filename
File.open(path, 'w')
File.write(path, wav.blobfile)
end

(假设wav.filename是文件名,wav.blobfile是我从数据库检索的blob数据)对此有什么建议吗?谢谢!

最佳答案

我会在 Rake 任务或 Rails 控制台中从这样的事情开始:

MyModel.find_each do |wav|
filename = Rails.root.join('path/to/file', wav.filename)
File.open(filename, 'wb') { |file| file.write(wav.blobfile) }
end

MyModel 更改为您的模型名称。

关于mysql - 使用 Ruby 从 MySQL 检索 BLOB 数据并将其保存为文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30394211/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com