我如何直接在MySQL Workbench中查看斑点

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

SELECT OLD_PASSWORD("test") 

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

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

简而言之:

  1. 转到编辑 > 首选项
  2. selectSQL编辑器
  3. 在“ SQL执行”下 ,检查“ BINARY / VARBINARY”作为非二进制string
  4. 重新启动MySQL Workbench(您不会被提示或通知此要求)。

使用此设置,您将能够连接字段而不会出现斑点。

我认为这适用于版本5.2.22和更高版本,是这个MySQL错误的结果。

免责声明:我不知道这个设置的缺点是什么 – 也许当你selectBINARY / VARBINARY值,你会看到它作为纯文本,这可能是误导和/或可能会阻碍性能,如果他们足够大?

执行三个步骤:

  1. 转到“WorkBench首选项” – >select“SQL编辑器”在“查询结果”下:选中“将BINARY / VARBINARY视为非二进制string”

  2. 重新启动MySQL WorkBench。

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

我不确定这是否回答这个问题,但如果你右键点击字段中的“blob”图标(当查看表格时),可以select“在编辑器中打开值”。 其中一个标签可以让你查看blob。 这是在ver。 5.2.34

但是这是一个痛苦,所以我会推荐使用spioter的方法,除非你使用了很多真正的blob数据。

 SELECT CAST(OLD_PASSWORD("test") AS CHAR) 

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

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

有同样的问题,根据MySQL的文档 ,你可以select一个BLOB的子串:

 SELECT id, SUBSTRING(comment,1,2000) FROM t 

HTH,glissi

工作台6.3
按照高分回答,然后使用UNCOMPRESS()

(简而言之:
1.转到编辑>首选项
2.selectSQL编辑器
3.在“SQL执行”下,选中“将BINARY / VARBINARY作为非二进制string”
4.重新启动MySQL Workbench(您不会被提示或通知此要求)。)

然后

 SELECT SUBSTRING(UNCOMPRESS(<COLUMN_NAME>),1,2500) FROM <Table_name>; 

要么

 SELECT CAST(UNCOMPRESS(<COLUMN_NAME>) AS CHAR) FROM <Table_name>; 

如果你只是把UNCOMPRESS(<COLUMN_NAME>)你可以右键点击blob,然后单击“打开编辑器中的值”。

有几件事你可以做

 SELECT GROUP_CONCAT(CAST(name AS CHAR)) FROM product WHERE id IN (12345,12346,12347) 

如果你想通过查询来定购,你可以通过下面的命令进行定购

 SELECT GROUP_CONCAT(name ORDER BY name)) FROM product WHERE id IN (12345,12346,12347) 

正如它在这个博客上所说的

http://www.kdecom.com/mysql-group-concat-blob-bug-solved/

SELECT *,CONVERT(UNCOMPRESS(column)USING“utf8”)AS column FROM table_name