mysql中某个类别的唯一int id

时间:2010-08-19 16:40:07

标签: mysql

所以db结构看起来像这样

tablename(uniqueid,categoryname,categoryid)

我希望能够生成一个在categoryname =“something”

的情况下唯一的数字

例如,我可以将categoryname作为'something',并且categoryid 1,2,3,4,5有5个不同的行。和另一个类别名称为'somethingelse',并且有3个不同的行categoryid为1,2,3。

由于auto_increment不起作用,我想知道我是否可以通过php做到这一点?

1 个答案:

答案 0 :(得分:1)

不,你只需要让自动增量工作,你确定uniqueid列设置为primary key吗?

另外,为什么你同时拥有uniqueidcategoryid

例如,您的表创建查询应该看起来像这样:

CREATE TABLE categories (
    id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(255) NOT NULL,
    PRIMARY KEY (id)
);

自动增量只能在数据库表的primary key上设置,并且只能在一列上设置。

有关MySQL文档中自动增量的更多信息:http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html