【问题标题】:Need Help Assigning ID Number to MySQL entry需要帮助为 MySQL 条目分配 ID 号
【发布时间】:2011-07-12 17:05:57
【问题描述】:

我创建了一个 MySQL 数据库,用户可以在其中通过 PHP 添加信息。每次用户添加信息时,我都想在数据库中为该条目分配一个唯一的 ID 号。我希望第一个数字是 10000。然后下一个条目应该是 10001,然后是 10002 等等...

我大致了解如何使用 PHP 完成此操作,但我正在寻找有关创建此类标识符的最直接方法的一些指导。

【问题讨论】:

    标签: php mysql sql uniqueidentifier


    【解决方案1】:

    你会想要在 mysql 中使用 auto_increment。然后,您可以使用 mysql_insertid() 检索该 ID。

    【讨论】:

      【解决方案2】:

      @hookedonit 是正确的 - 你会想要使用 auto_increment。此外,您需要将起始计数设置为 10000:ALTER TABLE myTable AUTO_INCREMENT = 10000;

      【讨论】:

        【解决方案3】:

        确实没有必要指定从某个点开始的id。但是,如果您一心想要它,那么您可以使用它来设置它...

        ALTER TABLE tbl AUTO_INCREMENT = 100;
        

        此外,您绝对应该让 MySQL 进行自动递增。它节省资源并且非常有效。创建表应如下所示...

        CREATE TABLE animals (
             id MEDIUMINT NOT NULL AUTO_INCREMENT,
             name CHAR(30) NOT NULL,
             PRIMARY KEY (id)
        ) ENGINE=MyISAM;
        
        INSERT INTO animals (name) VALUES
            ('dog'),('cat'),('penguin'),
            ('lax'),('whale'),('ostrich');
        

        参考:http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html

        此外,正如上面@hookedonit 所述,您可以使用 php 函数 mysql_insert_id (http://www.php.net/manual/en/function.mysql-insert-id.php) 获取最后一个 mysql 插入的 id )。

        你应该这样做!

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-09-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多