【有满意答复会加分】PHPMyAdmin里在表的浏览页面下只要选一次主键排序,就不能再选无主键排序了

WBOY
풀어 주다: 2016-06-13 12:48:36
원래의
792명이 탐색했습니다.

【有满意回答会加分】PHPMyAdmin里在表的浏览页面下只要选一次主键排序,就不能再选无主键排序了

本帖最后由 shendaowu 于 2013-04-06 21:32:01 编辑 我用的是XAMPP v3.1.0 Windows版。
我发现用PHP插入记录之后最后插入的记录在PHPMyAdmin里不是最后一条,就点了一下结果的表头中的id,然后查询结果就按id递增排序了,上面的查询语句也变成了这个:
SELECT * 
FROM  table 
ORDER BY  table.`id` ASC 
LIMIT 0 , 30
修改的时候只能修改SELECT * FROM table这个部分,下面的修改不了。
而且点击主键排序后面的那个下拉列表里的无业没有反应,不能把ORDER BY子句去掉。
奇怪的是我把这个表导出之后删掉,之后在导入进来还是有那个ORDER BY子句。

我有三个问题,第一个是怎么去掉那条ORDER BY子句,第二个是用PHP插入的最后一条记录在PHPMyAdmin里查看的时候为什么不是最后一条,第三个是不加ORDER BY的结果的顺序是不是就是数据库中的物理顺序。

--------------------------------------------------
刚才我自己把那个东西恢复了,那个东西保存在phpmyadmin这个数据库中的pma_table_uiprefs表里了,删除界面出错的表对应的记录之后重启服务就恢复了。那个表里的BLOB文件我看了,好像就是一些PHPMyAdmin的界面的配置,不知道删了会不会出问题?去掉那个ORDER BY子句之后顺序又乱了。
--------------------------------------------------
还有一些东西我没说:
那个表的主键被我设置成自增主键了。在用PHP插入之前我导入了一些数据,类似这样:
1 xx
2 ss
3 rr
然后用PHP插入。多次插入之后是这样的:
1 xx
2 ss
3 rr
4 ww

1 xx
2 ss
3 rr
5 ee
4 ww

1 xx
2 ss
3 rr
6 tt
5 ee
4 ww

但是我只导入表的结构之后用PHP插入就正常了。但是插入的时候id不是从0开始的,而是一个比较大的数,应该是上次最后使用的id的下一个,这样:
40 gg
41 ii
怎么才能让它从0开始?(或者是1?)

实在是不想浪费分,我问题比较多,分还是节省一点吧。如果有让我满意的回答的话我会加分的,如果能完全解决的话我会加80分,包括直接删phpmyadmin数据库中的那个表中的记录会不会出问题。

------解决方案--------------------
运行sql:
alter table '你的表名' AUTO_INCREMENT=1
로그인 후 복사

前提是当前表数据为空;
------解决方案--------------------
第一个是怎么去掉那条ORDER BY子句
再点一次

第二个是用PHP插入的最后一条记录在PHPMyAdmin里查看的时候为什么不是最后一条
是否看到是最后一条,取决于主键的值和排序方式

第三个是不加ORDER BY的结果的顺序是不是就是数据库中的物理顺序
默认排序为主键升序
可以理解为物理顺序

插入数据前执行
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
可使“自增”失效,但你需要自行保证主键唯一

命令
TRUNCATE TABLE 表名
可以清空表并使“自增”复位
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!