【发布时间】:2011-01-12 09:29:14
【问题描述】:
很抱歉这个菜鸟问题,但带圆圈的按钮是什么意思,我如何查看 blob 的内容?
(来源:rigel222.com)
【问题讨论】:
-
可以使用打印预览模式查看吗?
-
这似乎是与stackoverflow.com/questions/2721302/… 相同的问答空间?
标签: phpmyadmin blob
很抱歉这个菜鸟问题,但带圆圈的按钮是什么意思,我如何查看 blob 的内容?
(来源:rigel222.com)
【问题讨论】:
标签: phpmyadmin blob
phpMyAdmin 中已经有一个处理程序来显示 blob 数据 为此,只需在 url 末尾添加“&display_blob=true”。 更改网址如下:
*****phpmyadmin/sql.php?db=database_name&table=table_name
到
*****phpmyadmin/sql.php?db=database_name&table=table_name&display_blob=true
【讨论】:
早期版本的 phpmyadmin 有一个名为
的设置$cfg['ShowBlob'] = TRUE;
这将允许您在浏览器中查看 blob 的内容。您应该注意,如果您将二进制文件存储在 blob 中,这会导致混乱,因为您会在浏览器窗口中看到无尽的 gobblygok。有些人(比如我)决定他们的应用程序需要使用 BLOB 类型来存储文本(当时这似乎是一个不错的决定,而且我记得我在做出决定时有一些想法)。但是 phpmyadmin 决定通过弃用此配置设置来阻止这种情况。可以理解,因为这样做可能会导致相当多的支持请求。显然,我们的想法是将人们转移到 TEXT 字段类型上。
愉快地显示 blob 的内容已移至用户界面而不是配置中。
在浏览时查看 blob 内容的最简单方法是单击链接:
+ 选项
很高兴您的屏幕截图已经在顶部图像的顶部显示了 + 选项。
这将显示一个允许您显示 blob(和二进制文件)的表单。点击它,它会将它添加到您选择的会话中,确保您从那时起看到内容。
您也可以使用打印视图获得相同的结果:
打印视图(带全文)
位于页面底部。
遗憾的是,如果您总是想显示 blob,这两种技术都无济于事,因为它似乎经常重置。您可以通过添加行来解决此问题
$_GET['display_blob'] = true;
在 sql.php 文件的开头。我认为可能有更好的方法来做到这一点,我希望其他人能提出来......
(注意:正如 Rodrigo 指出的,您可以通过在 URL 上附加 &display_bob=true 来手动实现此效果)
您关于“选择文件”按钮的具体问题很简单。 Blob 的大部分用途是在数据库中存储数字文件。此按钮允许您将新文件上传到数据库中。如果您选择一个文件并单击“开始”,它将尝试将该文件的内容填充到您的 blob 列中。
请注意,简单地显示 blob 的内容可能不是其他用户想要的。当我在使用此选项显示 blob 之前查看“blob 摘要”时,我看到 blob 大小最大为 55 个字节。您的示例具有更大的值,因为看起来您正在存储非常小的文本文件,我认为这意味着文本段落。如果大小大于 10 千字节,则它可能是一个只会显示 gooblegok 的二进制文件。
如果您想智能地下载二进制文件(而不是将它们显示为文本),我认为您需要研究 phpmyadmin 所谓的 blobstreaming。
【讨论】:
你可以右键点击phpMyAdmin,将链接另存为txt文件扩展名,查看blob文本文件类型
【讨论】:
我在 config.inc.php 中添加了额外的内容,对我有很大帮助
# Show BLOB data on table browse pages. Hack to hardcode all requests.
$_REQUEST['display_blob'] = true;
【讨论】:
“选择文件”对话框允许您在工作站上选择一个文件并将其上传到该行的 blob 列中。
如果您的 BLOB 包含 JPEG 或 PNG 图像,您实际上可以在浏览时查看它们的缩略图,当您单击缩略图时会显示完整的图像。见https://phpmyadmin.readthedocs.org/en/latest/transformations.html。
【讨论】:
新版本的 PHPMyAdmin 似乎需要稍微不同的解决方案
$cfg['ProtectBinary'] = FALSE;
将其放在文件末尾/etc/phpmyadmin/config.inc.php
或者通过使用这一个衬垫
echo "\$cfg['ProtectBinary'] = FALSE;" | sudo tee -a /etc/phpmyadmin/config.inc.php
这在 PHPMyAdmin 版本 3.4.10.1deb1 上对我有用
【讨论】:
将 &display_blob=true 放在 URL 的末尾。
【讨论】:
我认为最好的解决方案是改变这一行:
$cfg['Servers'][$i]['extension'] = 'mysql';到这里:
$cfg['Servers'][$i]['extension'] = 'mysqli';如果您有可用的 mysqli 扩展,请使用它。它更安全,更优化,默认情况下它更好地处理 utf-8 的 BLOB 类型。您的 [BLOB] 条目应该开始显示为它们的值,而无需添加任何其他特殊配置选项。
【讨论】: