我在phpmyadmin中查看我的表并注意到ID从13410开始并增加1。我想重置并从1开始。我读过很多人说最好不要管它,否则如果你搞砸了它会变得复杂,但我仍然需要一个解决方案至少从1开始id。谢谢 最佳答案 ALTERTABLEtableAUTO_INCREMENT=1http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html我希望你知道你在做什么! 关于mysql更改列id以从1开始并从那里自动递增,我们在St
我只希望有一个表来按天存储一些事件。给定一个表:createtabletotals(entrydaydate,totalint(11)default0notnull,primarykey(entryday));我如何编写一个简单的查询,它会递增,但会创建一个必要的查询?我试过了-但它没有递增(它保持在1):REPLACEtotalsSETtotal=total+1,entryday="08-01-11"显然这可以在2个查询中非常简单地完成,但它是通过JDBC调用并且可能会被调用多次,所以1个查询会更好。 最佳答案 你可能想要ONDU
我有一个BEFOREINSERTTRIGGER用于计算AUTO_INCREMENT列的值(id_2)。id_1|id_2|data1|1|'a'1|2|'b'1|3|'c'2|1|'a'2|2|'b'2|3|'c'2|4|'a'3|1|'b'3|2|'c'我有PRIMARY(id_1,id_2)并且我正在使用InnoDB。之前,该表使用的是MyISAM,我没有遇到任何问题:id_2被设置为AUTO_INCREMENT,因此id_1的每个新条目会生成新的id_2在其自己的。现在,在切换到InnoDB之后,我有这个触发器来做同样的事情:SET@id=NULL;SELECTCOALESCE(
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我有一个mysql数据库表,其中包含每个美国城市、州、zip、纬度、经度。在我的网站页面上,我有一个城市的表单输入。当用户输入时,我想建议城市、州。目前有哪些好的做法/技术?(限制是jQuery、PHP、MYSQL)Solution
每当我在INSERT之后直接使用WHEREidisNULL执行SELECT语句时,我都会得到最后插入的行。我正在使用MySQL5.1.73。它直接发生在MySQLshell中;这是我的控制台:mysql>CREATETABLEtesting(->idint(11)NOTNULLAUTO_INCREMENT,->nameVARCHAR(200),->PRIMARYKEY(id)->)ENGINE=InnoDBDEFAULTCHARSET=utf8;QueryOK,0rowsaffected(0.03sec)mysql>INSERTINTOtesting(name)VALUES('test
我有一个表来制作临时id`s。当我删除表中的所有行时,该表的自动增量值将重置为0。但我不想重置自动增量。我能做什么? 最佳答案 比较TRUNCATETABLE:AnyAUTO_INCREMENTvalueisresettoitsstartvalue.ThisistrueevenforMyISAMandInnoDB,whichnormallydonotreusesequencevalues....与DELETEFROM:IfyoudeletetherowcontainingthemaximumvalueforanAUTO_INCREM
ALTERTABLEtablenameAUTO_INCREMENT=10000000此查询需要很长时间才能更新。为什么?我需要优化这个查询。 最佳答案 ALTERTABLE会导致整个表的重建-如果您的表包含很多行,这可能需要很长时间。如果您只需要提高auto_increment值的值,最快的方法是插入一个虚拟行(然后在需要时删除该行)。这只需要几分之一秒,而ALTERTABLE对于大表可能需要几天时间。例如,假设我有一个表,其中有一个auto_incrementID列和其他列col1、col2...:insertintoautoin
我正在尝试检查我的mysql数据库information_schema以找出列的属性。我找不到关于哪些列是auto_increment的详细信息。有谁知道我可以在information_schemaDB中的哪个位置找到此信息? 最佳答案 查看COLUMNS表中的EXTRA列:select*fromCOLUMNSwhereTABLE_SCHEMA='yourschema'andTABLE_NAME='yourtable'andEXTRAlike'%auto_increment%' 关于my
我接手了维护一个编码非常糟糕的电子商务网站的任务,我正在努力重构大量代码并尝试修复持续存在的错误。每个数据库插入(将商品添加到购物车等)都以grab_new_id函数开始,该函数计算表中的行数,然后从该数字开始查询数据库以查找未使用的索引号。除了在性能方面很糟糕(已经有40,000多行,索引被定期删除,所以有时需要几秒钟才能找到一个新的id)当两个操作同时执行时,这会定期中断,因为添加了两个条目具有重复的ID号。这对我来说似乎很愚蠢——为什么不在索引字段上使用自动递增呢?我已经对这两种方式进行了测试,并且在不指定索引ID的情况下向表中添加行(显然)要快很多倍。我的问题是:谁能想到原始程
基本上我有一个版本产品的表,所以它有两列感兴趣,id|product_idid是一个自增列,product_id只是一个int首次创建产品时,product_id来自id,编辑产品时,我们复制该行,因此product_id相同,但id不同。所以当我们第一次创建产品时,我们做了两个查询,插入,然后更新表whateversetproduct_id=idwhereid={theinsertid}这行得通,但我想知道是否有一种方法可以在一次查询中完成?请注意,我们只能访问插入、更新和删除。没有触发器或存储过程。 最佳答案 使用LAST_IN