mysql插入顺序的问题,100分悬赏
现在MySql向表中插入数据的顺序是:如果存在被删除的行就直接插到删除的那行去,请问有什么方法能强制将新的一行插入到表的末尾?比如当前表中数据为aa1bb1cc1然后删除...
现在MySql向表中插入数据的顺序是:如果存在被删除的行就直接插到删除的那行去,请问有什么方法能强制将新的一行插入到表的末尾?比如
当前表中数据为
a a 1
b b 1
c c 1
然后删除b那行,select结果为
a a 1
c c 1
然后插入一行d后,现在MySql的查询结果是
a a 1
d d 1
c c 1
而我希望插入的结果是
a a 1
c c 1
d d 1
请问有什么办法啊,是不是要在安装MySql服务的时候需要修改my.ini里的什么数值啊,跪求答案
谢谢楼上,但是我们项目第一期的代码里有许多表没有加上ID或者主键进行索引,而是完全依照插入的顺序来读取数据的,偏偏那几个模块还非常依赖插入的先后顺序(小小埋怨一下一期写代码的……,居然不用主键索引……),那个时候用的MySql是5.0安装版的,插入的时候都是往表的末尾插入的,现在客户要把MySql集成到安装包里,于是我找了一个MySql免安装版集成到InstallShield里了,但是新的MySql就出现了上述了插入顺序错误的问题,我估计是My.ini里哪个值设置错误了 展开
当前表中数据为
a a 1
b b 1
c c 1
然后删除b那行,select结果为
a a 1
c c 1
然后插入一行d后,现在MySql的查询结果是
a a 1
d d 1
c c 1
而我希望插入的结果是
a a 1
c c 1
d d 1
请问有什么办法啊,是不是要在安装MySql服务的时候需要修改my.ini里的什么数值啊,跪求答案
谢谢楼上,但是我们项目第一期的代码里有许多表没有加上ID或者主键进行索引,而是完全依照插入的顺序来读取数据的,偏偏那几个模块还非常依赖插入的先后顺序(小小埋怨一下一期写代码的……,居然不用主键索引……),那个时候用的MySql是5.0安装版的,插入的时候都是往表的末尾插入的,现在客户要把MySql集成到安装包里,于是我找了一个MySql免安装版集成到InstallShield里了,但是新的MySql就出现了上述了插入顺序错误的问题,我估计是My.ini里哪个值设置错误了 展开
3个回答
展开全部
哈哈哈,先笑三声,诸葛亮的台词:我不是在笑,是赞赏。
使用数据库的第一天就要记住,数据库的内部非常复杂,行的数量是无限多,存储的方式和位置我们都不管,事实上数据库里面的数据库并不一定是按行存储的,有可能有几个字段在C盘,有几个字段在D盘。
你这样的事情是可以实现的,但是不是你说的去控制行的位置,而是增加一个自动增加的列,这个列每次插入数据都自动编号,而且删除以后不会重复,比如名字叫做ID,选择自动增加属性。你以后的插入、删除操作不变,查询的时候按照这个自动排序就达到你的目的了,例如:
SELECT * FROM tab ORDER BY id
使用数据库的第一天就要记住,数据库的内部非常复杂,行的数量是无限多,存储的方式和位置我们都不管,事实上数据库里面的数据库并不一定是按行存储的,有可能有几个字段在C盘,有几个字段在D盘。
你这样的事情是可以实现的,但是不是你说的去控制行的位置,而是增加一个自动增加的列,这个列每次插入数据都自动编号,而且删除以后不会重复,比如名字叫做ID,选择自动增加属性。你以后的插入、删除操作不变,查询的时候按照这个自动排序就达到你的目的了,例如:
SELECT * FROM tab ORDER BY id
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |