如何在MySQL Workbench中直接查看blob

mar*_*ark 63 mysql mysql-workbench

我正在使用MySQL Workbench CE 5.2.30 CE/Rev 6790.执行以下语句时:

SELECT OLD_PASSWORD("test")
Run Code Online (Sandbox Code Playgroud)

我只返回一个漂亮的BLOB图标,我需要左键单击以选择单元格,右键单击并选择"在查看器中打开值"并选择"文本"选项卡.

使用与phpMyAdmin相同的,我直接回到OLD_PASSWORD调用的值.这只是一个例子,但有没有办法在输出中直接看到这样的结果?

spi*_*ter 103

简而言之:

  1. 转到编辑 > 首选项
  2. 选择SQL编辑器
  3. SQL Execution下,选中Treat BINARY/VARBINARY作为非二进制字符串
  4. 重新启动MySQL Workbench(不会提示您或通知您此要求).

在MySQL Workbench 6.0+中

  1. 转到编辑 > 首选项
  2. 选择SQL查询
  3. 在" 查询结果"下,选中" 处理BINARY/VARBINARY"作为非二进制字符串
  4. 重启MySQL Workbench不是强制性的(不会提示您或告知此要求).*

使用此设置,您将能够连接字段而无需获取blob.

我认为这适用于版本5.2.22及更高版本,并且是此MySQL错误的结果.

免责声明:我不知道这个设置的缺点是什么 - 也许当您选择BINARY/ VARBINARY值时,您会将其视为纯文本,这可能会产生误导和/或如果它们足够大可能会妨碍性能?

  • 在 Mac 上使用 MySQL Workbench 版本 8.0.21,并在选中“将 BINARY/VARBINARY 视为非二进制字符串”选项后,尝试刷新结果集,Workbench 只是加载并加载,而不从数据库返回任何值...其他人也会发生这种情况有什么问题吗? (4认同)
  • 仅供参考:在MySQL Workbench的5.2.39版中,它是“ SQL编辑器”,而不是“ SQL查询”。 (2认同)
  • 唉,这在6.3中不起作用:( (2认同)
  • 在6.3.3中工作,我不需要在更改设置后重新启动Workbench. (2认同)

小智 26

执行三个步骤:

  1. 转到"WorkBench首选项" - >选择"SQL编辑器"在"查询结果"下:选中"将BINARY/VARBINARY视为非二进制字符串"

  2. 重启MySQL WorkBench.

  3. 现在选择 SELECT SUBSTRING(BLOB<COLUMN_NAME>,1,2500) FROM <Table_name>;

  • 有趣的是多么相似,后来这比得分最高的答案:-p (6认同)
  • 不是“BLOB&lt;COLUMN_NAME&gt;”,而是“&lt;BLOB_COLUMN_NAME&gt;” (2认同)

小智 23

我不确定这是否能回答这个问题,但如果您右键单击该字段中的"blob"图标(查看表格时),则可以选择"在编辑器中打开值".其中一个选项卡允许您查看blob.这是ver.5.2.34


CST*_*bey 13

铸造工作,但它是一个痛苦,所以我建议使用spioter的方法,除非你使用了很多真正的blob数据.

SELECT CAST(OLD_PASSWORD("test") AS CHAR)
Run Code Online (Sandbox Code Playgroud)

您也可以转换为其他类型,甚至限制大小,但大多数时候我只使用CHAR:http: //dev.mysql.com/doc/refman/5.5/en/cast-functions.html#function_cast


小智 6

select CONVERT((column_name) USING utf8) FROM table;
Run Code Online (Sandbox Code Playgroud)

就我而言,Workbench 不起作用。所以我使用上述解决方案将 blob 数据显示为文本。


小智 5

似乎不可能我害怕,它被列为工作台中的一个错误:http://bugs.mysql.com/bug.php? id = 50692 虽然它会非常有用!


小智 5

有同样的问题,根据MySQL文档,您可以选择BLOB的子字符串:

SELECT id, SUBSTRING(comment,1,2000) FROM t
Run Code Online (Sandbox Code Playgroud)

HTH,glissi


mbu*_*nch 5

我将其他一些帖子拼凑在一起,因为工作台“首选项”修复对我不起作用。(WB 6.3)

SELECT CAST(`column` AS CHAR(10000) CHARACTER SET utf8) FROM `table`;
Run Code Online (Sandbox Code Playgroud)