【问题标题】:How to make MySQL table primary key auto increment?如何使 MySQL 表主键自动递增?
【发布时间】:2015-11-05 03:14:51
【问题描述】:
CREATE TABLE IF NOT EXISTS `mydb`.`Info_instrumental` (
  `id_instrument` INT NOT NULL COMMENT '',
  `instrument` VARCHAR(45) NOT NULL COMMENT '',
  `exp_ins` VARCHAR(45) NULL COMMENT '',
  `User_name_user` VARCHAR(45) NOT NULL COMMENT '',
  PRIMARY KEY (`id_instrument`, `User_name_user` `)  COMMENT '',
  INDEX `fk_Info_instrumental_User1_idx` (`User_name_user` ` ASC)  COMMENT '',
  CONSTRAINT `fk_Info_instrumental_User1`
    FOREIGN KEY (`User_name_user`)
    REFERENCES `mydb`.`Usuario` (`name_user`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;

我想增加我的 id 字段,例如 '001','002','003'.... 我如何使用触发器来做到这一点?

我想要这样的东西:

| id_instrument | instrument| exp_ins | User_name_user
------------------------------------------------------
|      001     | guitar    | 2 years |   Marcus
|      002     | piano     | 6 months|   Leo

【问题讨论】:

  • int 值没有前导零。

标签: mysql mysql-workbench auto-increment


【解决方案1】:

您可以在创建表中使用zerofill 关键字来查看您正在寻找的结果。这是一个例子:

mysql> create table info_instrumental (
     >     id_instrument int(3) zerofill not null primary key auto_increment
     > );

mysql> insert into info_instrumental values (1), (2), (3);

mysql> select * from info_instrumental;
+---------------+
| id_instrument |
+---------------+
|           001 |
|           002 |
|           003 |
+---------------+

你不需要触发器就能得到这样的结果。

【讨论】:

    猜你喜欢
    • 2013-07-27
    • 2012-12-08
    • 1970-01-01
    相关资源
    最近更新 更多