我已经存储在MySQL的图像作为斑点(我知道这是错)。其中有很多。有没有把它们的所有磁盘上,像SELECT .. INTO OUTFILE
任何快捷方式,但许多文件insted的一个吗?或者唯一的方法是编写一个脚本来遍历行并保存图像?卸载映像磁盘
Q
卸载映像磁盘
1
A
回答
3
既然你希望它们保存到磁盘上的不同文件,你必须去一个脚本。
0
我有一个类似的需求,我发现在我的情况下使用Java + Hibernate(可能类似于其他Hibernate变体中的任务,但没有尝试过),让我很快就到了那里。
我设置了这样的映射:
<hibernate-mapping>
<class name="<com.package.table>" table="table">
<id column="pk" name="pk" type="int">
</id>
<property name="blobfield" type="blob"/>
</class>
</hibernate-mapping>
一个Java Bean来承载数据,是这样的:
package com.package;
import java.sql.Blob;
...
public class table {
...
public Blob getBlobfield {
...
和循环是这样的:
...
tx = session.beginTransaction();
Criteria crit = session.createCriteria(table.class);
crit.setMaxResults(50); // Alter this to suit...
List<table> rows = crit.list();
for (table r: rows) {
ExtractBlob(r.getId(), r.getBlobField);
}
而且东西(“ExtractBlob”是我打电话这一点)来提取BLOB(使用PK来产生一个文件名),李的东西柯本:
...
FileOutputStream fout=new FileOutputStream(<...base output file on PK for example...>
BufferedOutputStream bos=new BufferedOutputStream(fout);
InputStream is=blob.getBinaryStream();
byte[] b=new byte[8192];
while ((is.read(b))>0) {
bos.write(b);
}
is.close();
bos.close()
;
...
我可以发布一个更完整的例子,如果你看起来像它可能是有用的 - 但我会提取从一个更大的项目的代码,否则我会刚刚张贴直线上升。
+0
可悲的是,我不知道的Java。但我很确定我可以在PHP中做到这一点:) –
2
#!/usr/bin/perl
#Note: it is my habit to name a Query Result $qR.
use strict;
use DBI;
my $dbh = DBI->connect(YOUR_INFO_HERE);
my $i = 0;
my $q = $dbh->prepare('select image from images');
while (my $qR = $q->fetchrow_arrayref) {
open(FILE,'>',"$i.jpg");
print FILE $qR[0];
close FILE;
$i++;
}
相关问题
- 1. 在Windows上安装/卸载USB磁盘
- 2. 使用.NET创建磁盘映像
- 3. Mac OS X磁盘映像验证
- 4. 将铬安装到Linux磁盘映像?
- 5. AFNetworking 3.0磁盘映像缓存
- 6. MySQL写入映像BLOB到磁盘
- 7. 如何创建磁盘的映像?
- 8. 硬盘磁盘空间每天由1gig卸载
- 9. Windows Storage Management API - VDS(虚拟磁盘服务)卸载磁盘等效方法
- 10. 卡布奇诺 - 将磁盘映像加载到CPImageView
- 11. 在列表视图中从磁盘Windows Phone 8.1加载映像?
- 12. Silverlight - 将已下载的映像保存到磁盘
- 13. iPhone磁盘映像加载(照片应用程序等)
- 14. 安装磁盘映像时从磁盘仲裁中进行双重回调
- 15. 谷歌计算引擎:磁盘快照和磁盘映像有什么区别?
- 16. 从钛磁盘加载图像
- 17. Clutter.Image属性 - 从磁盘加载图像
- 18. 快速从磁盘加载UITableViewCell图像
- 19. 获取磁盘卸载单行需求和异常
- 20. 从非托管图像列表转储映像到磁盘
- 21. 将磁盘映像添加到映像集时发生读取权限错误
- 22. 本地磁盘上的映像未在Tomcat项目配置中加载
- 23. 挂载Iphone作为磁盘
- 24. 从磁盘加载程序
- 25. 在cygwin中装载软盘映像
- 26. Docker磁盘内存:我可以删除中间映像吗?
- 27. 如何从blob在磁盘上写入映像?
- 28. UUID和磁盘映像之间的关系是什么?
- 29. GoogleAppEngineLauncher:数据库磁盘映像格式不正确
- 30. Pytsk - 从磁盘映像发送文件到服务器
出于兴趣,为什么它错了? [我一直避开使用斑点的图像数据为好,但我没有一个很好的理由这样做! (除了图像数据比诊断/调试更隐藏的事实)。 – monojohnny
它像糖蜜一样慢。 –