比如一个表有1000个记录,删空,delete from那下一次新增的记录 id 是 1001   
问题是空表的时候,我怎么获取它这个 1001?

解决方案 »

  1.   

    我怎么获取它这个 1001?:插入前 OR 后?
    如ID是自增,直接修改从1开始不行?
      

  2.   

    一般是插入后用MAX OR LAST_INSERT_ID()
    取得
      

  3.   

    mysql> SELECT LAST_INSERT_ID();
            -> 195
      

  4.   

    你们都不知道我问啥吗?比如:有一个表id从1到1000,共1000个记录。我delete from 删光光想知道这个空表如果有新记录插入,id是多少(前提是不插入就知道,怎么知道)。
      

  5.   

    此时你的表定义里面有这个吧:
    create table ...
    (...)
    ... auto_increment=1001;
      

  6.   

    1. 方法1
    插入一条测试记录,然后删除掉,获取ID。不再赘述。2. 方法2
    利用Mysql自带的一个函数语句 "SHOW TABLE STATUS",可以获取当前数据库里的所有表的属性等信息,通常用来做数据库的优化和维护。如果需要指定某一张表的话,可以通过两种方法指定。
    一种是网上给出来的:
    show table status like 'TableName'
    另外就是常见的where语句
    show table status where Name ='TableName'得到的结果集里面有一列AUTO_INCREMENT,是一个Int值变量,获取之后就是下一个要插入的ID了。
      

  7.   

    直接插入吧,只要是delete的会自动增加的。
      

  8.   

    select AUTO_INCREMENT
    from INFORMATION_SCHEMA.TABLES 
    where TABLE_NAME='比如一个表'