如何将“全文”设置为phpMyAdmin的默认值?

时间:2013-07-24 13:56:39

标签: phpmyadmin

我正在使用phpMyAdmin v3.4.10.1deb1来管理我的Ubuntu-Server上的一些MySQL表,其中包含具有SQL格式“TEXT”的字段。显示这些字段时,默认情况下会截断它们。我总是要点击符号“←T→”将文本扩展到它们的全长。但我不想对每个查询执行此操作,因为这意味着每个查询帽都要执行两次。

我希望“全文”是默认的。但我找不到放置它的地方。

你能帮忙吗?

8 个答案:

答案 0 :(得分:23)

我在phpMyAdmin中有一个选项:Settings > Main Panel > Browse Mode名为Limit column characters,您可以在其中更改默认的字符数限制(50)。但我不相信你可以默认将它设置为不限制......

答案 1 :(得分:5)

这是hacky解决方案(适用于我)但需要更改一些PMA php文件。如果您知道自己在做什么,可以试试这个:

    在您的phpmyadmin文件夹中
  • 找到此文件: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 中对我有用:

  1. docker exec -it [your_container_name] sh;
  2. apt-get update;
  3. apt-get install vim;
  4. vim ./libraries/classes/Display/Results.php;
  5. 按键盘上的字母 ivim 中进入 INSERT 模式;
  6. 更改文件底部的函数_getPartialText,如下所示;
  7. 完成文件编辑后,按 ESC 键。这将使您退出 INSERT 模式;
  8. 要保存文件,请输入冒号,后跟wq。例如。 :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 不需要重新启动,更改应自动应用。