【问题标题】:How to work with auto incrementing columns in mySQL如何在 mySQL 中使用自动递增列
【发布时间】:2011-09-25 12:14:53
【问题描述】:

我将如何使用自动递增的 mysql 列的 insert into 语法?

例如:

INSERT INTO table (auto, firstname, lastname) VALUES ('Dan','Davidson')

上面的代码是否可以工作并在自动递增的同时填写名字和姓氏列?

【问题讨论】:

    标签: mysql sql auto-increment


    【解决方案1】:

    您可以将该字段保留为空。

    INSERT INTO table (auto, firstname, lastname) VALUES (null, 'Dan','Davidson')
    

    或者只保留自动递增字段。

    INSERT INTO table (firstname, lastname) VALUES ('Dan','Davidson')
    

    【讨论】:

      【解决方案2】:

      不,代码不起作用。由于值是动态生成的,因此不应插入自动增量列。执行以下操作:

      INSERT INTO table (firstname, lastname) VALUES ("fName", "lName")
      

      会自动为“auto”字段分配一个值。

      【讨论】:

        【解决方案3】:

        你不需要在字段列表中列出自动递增的列,它会自动递增:

        INSERT INTO table (firstname, lastname) VALUES('Dan', 'Davidson')

        【讨论】:

        • 如果列列表中包含自动增量列,则使用 NULL 或 DEFAULT 应该可以在 VALUES 部分中使用。
        • @OMG Ponies 点值得注意,如果您的表有很多列,所有列都需要更新,除了一个是自动增量列。在这种情况下,您可以将NULL 传递给自动增量列,而不是输入所有列名。
        猜你喜欢
        • 1970-01-01
        • 2016-03-07
        • 2014-10-01
        • 2016-02-19
        • 1970-01-01
        • 1970-01-01
        • 2019-12-29
        • 1970-01-01
        • 2012-05-28
        相关资源
        最近更新 更多