我正在使用phpMyAdmin v3.4.10.1deb1来管理我的Ubuntu-Server上的一些MySQL表,其中包含具有SQL格式“TEXT”的字段。显示这些字段时,默认情况下会截断它们。我总是要点击符号“←T→”将文本扩展到它们的全长。但我不想对每个查询执行此操作,因为这意味着每个查询帽都要执行两次。
我希望“全文”是默认的。但我找不到放置它的地方。
你能帮忙吗?
答案 0 :(得分:23)
我在phpMyAdmin中有一个选项:Settings > Main Panel > Browse Mode
名为Limit column characters
,您可以在其中更改默认的字符数限制(50)。但我不相信你可以默认将它设置为不限制......
答案 1 :(得分:5)
这是hacky解决方案(适用于我)但需要更改一些PMA php文件。如果您知道自己在做什么,可以试试这个:
phpmyadmin/libraries/display_tbl.lib.php
PMA_displayTable_checkConfigParams
if (!isset($_REQUEST['display_text'])) $_REQUEST['display_text'] = 'F';
默认情况下,这将启用“全文”,允许您切换回“部分文本”模式。
请注意我在稍微不同的PMA版本(3.5.2.2)上测试它,因此函数/文件名可能不同。
答案 2 :(得分:4)
第一:如果没有必要,不要更改核心文件。
要在PMA版本4.5.4.1中实现此目的,您只需将此行添加到 config.inc.php :
if ( !isset($_REQUEST['pftext'])) $_REQUEST['pftext'] = 'F';
默认情况下,这将始终将结果设置为FULL TEXT,如果需要部分,则可以切换
答案 3 :(得分:1)
当前稳定版本(4.5.0)的等效补丁:
public static int[] sortMe ( int[] x) {
..
}
答案 4 :(得分:0)
上面的答案(3)指出了我正确的方向,但自他的答复后,例程名称已经改变。
我正在使用WAMP版本:PHPMyAdmin的4.5.5版。
1)打开文件" DisplayResultsClass.php"它位于" C:/ WAMP / PHPMyAdmin / libraries"。
2)搜索"私人功能_getFullOrPartialTextButtonOrLink()"
3)开口大括号后#34; {"按照上面的行,添加下面的代码行: -
" if(!isset($ _ REQUEST [' full_text_button']))_REQUEST [' full_text_button'] =' F';&#34 ;
这将设置"全文"单选按钮。
关闭PHPMyAdmin并重新打开它。默认保留(直到您更新或重新安装WAMP或PHPMyAdmin当然!上帝知道为什么他们没有在配置文件中创建默认值。如果他们这样做我当然找不到它。
我很厌烦切换到" Full Texts"每次清楚时这应该是默认值。这让我觉得作者故意试图让程序员感到高兴。
约翰
答案 5 :(得分:0)
更改列字符的限制
Select "Browse" option of any table
Select Settings gear icon at top right corner
Change character limit in "Limit column characters box" according to your need
Press Apply
答案 6 :(得分:0)
它在 docker 容器中运行的版本 5.0.2
中对我有用:
docker exec -it [your_container_name] sh
;apt-get update
;apt-get install vim
;vim ./libraries/classes/Display/Results.php
;i
在 vim
中进入 INSERT 模式;_getPartialText
,如下所示;ESC
键。这将使您退出 INSERT 模式;:wq
;/**
* Truncates given string based on LimitChars configuration
* and Session pftext variable
* (string is truncated only if necessary)
*
* @param string $str string to be truncated
*
* @return mixed
*
* @access private
*
* @see _handleNonPrintableContents(), _getDataCellForGeometryColumns(),
* _getDataCellForNonNumericColumns
*/
private function _getPartialText($str)
{
$original_length = mb_strlen($str);
/*
if ($original_length > $GLOBALS['cfg']['LimitChars']
&& $_SESSION['tmpval']['pftext'] === self::DISPLAY_PARTIAL_TEXT
) {
$str = mb_substr(
$str,
0,
(int) $GLOBALS['cfg']['LimitChars']
) . '...';
$truncated = true;
} else {
$truncated = false;
}
*/
$truncated = false;
return [
$truncated,
$str,
$original_length,
];
}
答案 7 :(得分:0)
Dziad Borowy's answer 是正确的,因为您不能设置“无限制”。
话虽如此,该线程上的所有答案似乎都省略了对最大字符数的永久修复,所以这里是:
转到您的 PMA 服务器。找到 phpMyAdmin 配置文件,config.inc.php
:
locate config.inc.php
使用您选择的文本编辑器查找以下字符串:
$cfg['LimitChars']
将值更改为您想要的任何值(默认为 50
):
$cfg['LimitChars'] = 1000;
写入并退出。 PMA 不需要重新启动,更改应自动应用。