phpMyAdmin 在表格视图中将 varchar 字段显示为单独的十六进制值
Posted
技术标签:
【中文标题】phpMyAdmin 在表格视图中将 varchar 字段显示为单独的十六进制值【英文标题】:phpMyAdmin displaying varchar fields as individual hex values in table view 【发布时间】:2014-04-22 22:24:16 【问题描述】:我在 MAMP-pro 中运行 phpMyAdmin,最近注意到在我升级到 phpMyAdmin 4.1.7 后开始出现一些奇怪的行为。基本上,varchar 字段在查看表格甚至查询结果时都无法正确显示,但在单个记录显示中则不会。
product 字段是一个 varchar 字段,通常类似于“300x250”,而不是那个十六进制值字符串:
编辑第一条记录会给我这个正确显示值的屏幕:
当我本地升级到4.1.7时开始出现这个问题,所以我降级回4.0.6,一切又正常了。但是,这些表是从另一个生产数据库复制过来的。我使用 phpMyAdmin 从生产环境中导出,然后删除本地表,然后将它们重新导入本地。
所有 varchar 字段现在都显示为两位十六进制值的字符串,但仅在我已删除和导入的那些表中。一段时间未触及的表格仍会显示正确的 varchar 值。
在升级之前我从未见过这个问题,但现在它开始在 4.0.6 上发生。生产服务器使用的是 3.4.10.1,但最近没有更新,所以我认为这不是问题,因为我以前经常执行此过程并且从未遇到任何问题。
编辑: 所以进一步阅读后,我意识到问题在于varchar字段设置为utf8_bin,需要更改为utf8_general_ci。我不明白的是,生产数据库中的字段设置为 utf8_bin,并且它们始终正确显示,以及为什么直到最近才成为问题。
【问题讨论】:
【参考方案1】:编辑./config.inc.php
并换行
$cfg['Servers'][$i]['extension'] = 'mysql';
到
$cfg['Servers'][$i]['extension'] = 'mysqli';
【讨论】:
以上是关于phpMyAdmin 在表格视图中将 varchar 字段显示为单独的十六进制值的主要内容,如果未能解决你的问题,请参考以下文章
如何在 phpmyadmin 中将“关系显示列”设置为默认值
如何在 PhpMyAdmin 中将 csv-import 西里尔文文本导入 latin1-swedish-ci 编码表?
在 ios 8 中将集合或表格视图或自定义视图添加到滚动视图