1

我将列定义id为主键,但是如何自动使它比最后一个大一呢?

4

4 回答 4

3

您正在寻找AUTO_INCREMENT,您可以在此处查看文档 您需要将id列设置为AUTO_INCREMENT

文档中的示例

CREATE TABLE animals (
     id MEDIUMINT NOT NULL AUTO_INCREMENT,
     name CHAR(30) NOT NULL,
     PRIMARY KEY (id)
) ENGINE=MyISAM;
于 2013-06-02T22:09:08.410 回答
1

您必须设置自动增量。

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');

SELECT * FROM animals;

 Which returns:

+----+---------+
| id | name    |
+----+---------+
|  1 | dog     |
|  2 | cat     |
|  3 | penguin |
|  4 | lax     |
|  5 | whale   |
|  6 | ostrich |
+----+---------+

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

于 2013-06-02T22:12:23.683 回答
0

好的,没有注意到标签。

点击A_IphpMyAdmin 中 id 列的复选框。

- -老的 - -

Oracle方式,触发序列:

CREATE sequence aic increment BY 1 start WITH 1;

CREATE TABLE blarg (
        id NUMBER(15,0) PRIMARY KEY,
        foobar VARCHAR2(255)
);

CREATE TRIGGER trigger ait BEFORE INSERT ON blarg
REFERENCING NEW AS NEW OLD AS OLD FOR EACH ROW
Begin
    SELECT aic.NEXTVAL INTO :NEW.id FROM DUAL;
End;
于 2013-06-02T22:17:40.683 回答
0
"AUTO_INCREMENT" it ...

请参阅链接http://www.w3schools.com/sql/sql_autoincrement.asp

示例: 以下 SQL 语句将“P_Id”列定义为“Persons”表中的自增主键字段:

CREATE TABLE Persons
(
  P_Id int NOT NULL AUTO_INCREMENT,
  LastName varchar(255) NOT NULL,
  FirstName varchar(255),
  Address varchar(255),
  City varchar(255),
  PRIMARY KEY (P_Id)
)
于 2013-06-02T22:10:17.477 回答