需要帮助为MySQL条目分配ID号

时间:2011-07-12 17:05:57

标签: php mysql sql uniqueidentifier

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

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

3 个答案:

答案 0 :(得分:4)

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

答案 1 :(得分:1)

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

答案 2 :(得分:1)

确实没有必要指定id在某一点开始。但是,如果你对它有所了解,那么你可以使用它设置它......

ALTER TABLE tbl AUTO_INCREMENT = 100;

另外你绝对应该让MySQL进行自动递增。它节省了资源并且非常有效。 create table应该看起来像这样......

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获取最后一个mysql插入的id(http://www.php.net/manual/en/function.mysql-insert-id.php )。

那应该做啊!