我在标题上遇到了困难,所以让我解释一下。
我正在做的是使用jQuery UI在页面上创建可排序的列表元素。提交订单后,php会根据订单的顺序为列表元素分配递增值,删除现有的id列,创建新的id列并插入每个列表元素值WHERE title = x。这会创建正确的ID顺序,并且工作正常。
我现在要做的是将列更改为auto_increment,这样如果我插入一个新条目,则会自动分配id,这个数字比php脚本生成的最大数字高一个。我没有使用任何外键或任何东西,只是这个简单的表。
这可能吗?
答案 0 :(得分:1)
我的错误,我误解了你的问题。您不希望使用数据库本身根据排序顺序提供编号。但是,您可以使用SQL查询本身返回递增字段。一秒钟,我将用该信息更新...
好的,这是:
你需要使用像这样的变量 设置@ n = 0; SELECT @n:= @ n + 1为'n', COL1, COL2 从表
但是,我强烈建议您尽可能在PHP代码中创建编号。
----------------原帖----------------
使用phpmyadmin非常简单。如果您无法安装,请告诉我,我将挖掘必要的SQL。
哎呀,这是SQL:
alter table t1 modify f1 int(4)auto_increment alter TABLE tbl auto_increment = xxx; //将xxx更改为应该使用的下一个ID
根据您现有的数据集,您可能需要以相反的顺序运行它们,如果您不将auto_increment的值更改为尚未使用的内容,则无法添加auto_increment。