如何在PHPMyAdmin中设置表的默认排序(即总是“主键-降序”)

ergxz8rk  于 2022-11-09  发布在  PHP
关注(0)|答案(8)|浏览(324)

虽然在很多方面都很讨厌,但我在编写PHP时一直使用PHPMyAdmin来调试数据库问题。默认情况下,它按主键升序对表进行排序。99%的情况下,我宁愿让最新的数据(我的测试数据)默认显示在顶部,而不是无用的前几条记录。
有没有办法配置PHPMyAdmin默认显示最新的记录?改变类似的行为?

thigvfpy

thigvfpy1#

对于其他来这里寻找答案的人:
在phpMyAdmin 4.5.0中,或者在更早的版本中,你可以这样设置$cfg ['TablePrimaryKeyOrder']配置:

$cfg['TablePrimaryKeyOrder'] = 'DESC';

当没有外部定义的排序顺序时,这定义了具有主键的表的默认排序顺序。可接受的值:['无','升序','降序']
如果数据表有主索引键,而且没有套用其他排序,则会设定预设排序。

jgovgodb

jgovgodb2#

您可以使用正在浏览的表格的名称来存储私人书签。
请访问https://phpmyadmin.readthedocs.org/en/latest/faq.html#bookmarks-can-i-execute-a-default-bookmark-automatically-when-entering-browse-mode-for-a-table

6.22书签:进入表格的“浏览”模式时,是否可以自动执行默认书签?

是。如果书签的标签与表名相同,并且不是公共书签,则执行该书签。

y0u0uwnf

y0u0uwnf3#

我认为你可以做到这一点。转到一个表-〉操作,并设置按降序更改表顺序。下次当你浏览时,你会先得到最新的一行。

evrscar2

evrscar24#

@jeremyclarke,在phpMyAdmin v3.4.5中,登录后单击“主页”,然后从“更多”菜单中选择“设置”,单击“主框架”选项卡,然后单击“浏览模式”选项卡
在这里你会发现“默认排序顺序”,默认模式设置为SMART,因此,选择“ASC”或“DESC”
如果您执行上述步骤,则将为当前会话保存该文件,
在config.php www.example.com中设置它以永久保存http://wiki.phpmyadmin.net/pma/Config#Order

xpcnnkqh

xpcnnkqh5#

缺省情况下,它按主键升序对表进行排序
phpMyAdmin在默认情况下根本不执行任何排序。它只是询问表中的所有记录,并由MySQL决定顺序。
有没有办法配置PHPMyAdmin默认显示最新的记录?改变类似的行为?
没有办法做到这一点,因为phpMyAdmin必须被告知每个表的每个主键(假设有一个,而且只有一个)以及如何排序它。
phpMyAdmin确实支持为查询添加书签。你可以用DESC然后添加书签。但是,如果你的目标是最小化点击次数的话,它肯定不会。
http://www.phpmyadmin.net/documentation/

unhi4e5o

unhi4e5o6#

为什么不使用heidi SQL
以下是操作指南:

启用从主机PC登录。

首先,获取您的IP地址-http://www.whatismyip.com希望这是一个静态IP,否则您将有一些不太安全的选项(如下)
您需要访问权限才能在数据库上创建用户。您可以通过Cpanel或PHP My Admin(假设您有正确的访问权限)来完成此操作。如果您不确定,请Google获取相关说明。如果失败,您可以尝试运行此查询:

CREATE USER 'jason'@'your_ip_here' IDENTIFIED BY 'your_password_here';
GRANT ALL PRIVILEGES ON database_name.* TO 'jason'@'your_ip_here';

如果你没有静态IP地址,那么你可以考虑使用通配符,虽然这是不太安全的。

下载并安装Heidi SQL

http://www.heidisql.com/download.php
运行安装程序(当然是在windows上)
最后,设置您的连接,连接。
你会发现heidi可以让你很容易地对数据列表进行排序,http://www.heidisql.com/screenshots.php?which=data它还能记住排序和过滤器。

pjngdqdw

pjngdqdw7#

我使用的是phpMyAdmin版本4.2.3(英语),我只是更新了DatabaseInterface.class.php文件中第488行的排序顺序变量,该文件位于Libraries目录中。

public function getTablesFull($database, $table = false,
    $tbl_is_group = false,  $link = null, $limit_offset = 0,
    limit_count = false, $sort_by = 'Name', $sort_order = 'DESC',
    $tble_type = null

当我打开文件时,变量$sort_order等于“ASC”。自从将其更改为DESC并通过FTP上载后,我的表(以日期(DATETIME)为唯一键)的排序顺序始终为DESC(最近添加的记录排在最前面)。
不确定这是否是所有情况下最好的解决方案,但它适合我的需要。
希望这能帮上忙。

oalqel3c

oalqel3c8#

以上答案对我都不起作用,我使用的是PHPMyAdmin 5.2.0
您可以编辑PHPMyAdmin的以下文件,并将排序顺序设置为DESC
文件路径:/usr/share/phpmyadmin/libraries/classes/Config/Settings.php
函数:setTablePrimaryKeyOrder()
只需在setTablePrimaryKeyOrder()函数开始时设置如下设置变量。

$settings['TablePrimaryKeyOrder'] = 'DESC';

您可以开始了!!

相关问题