PHP mySQL - 将新记录插入主键自动递增的表中

问题描述 投票:0回答:6

想知道是否有速记版本可以将新记录插入启用主键的表中? (即不必在查询中包含键列) 假设关键列称为 ID,其他列是 Fname、Lname 和 Website

$query = "INSERT INTO myTable VALUES ('Fname', 'Lname', 'Website')";
php mysql insert auto-increment
6个回答
112
投票

使用 DEFAULT 关键字:

$query = "INSERT INTO myTable VALUES (DEFAULT,'Fname', 'Lname', 'Website')";

此外,您还可以指定列(这是更好的做法):

$query = "INSERT INTO myTable
          (fname, lname, website)
          VALUES
          ('fname', 'lname', 'website')";

参考:


12
投票

我更喜欢这种语法:

$query = "INSERT INTO myTable SET fname='Fname',lname='Lname',website='Website'";

6
投票
$query = "INSERT INTO myTable VALUES (NULL,'Fname', 'Lname', 'Website')";

只需保留AI主键的值

NULL
就会分配一个自动递增的值。


3
投票

这是 phpMyAdmin 方法。

$query = "INSERT INTO myTable
         (mtb_i_idautoinc, mtb_s_string1, mtb_s_string2) 
         VALUES
         (NULL, 'Jagodina', '35000')";

0
投票

您还可以对 auto_increment 列使用空白单引号。像这样的东西。这对我有用。

$query = "INSERT INTO myTable VALUES ('','Fname', 'Lname', 'Website')";

0
投票

如果是 int 则插入 0 而不是 ''。

© www.soinside.com 2019 - 2024. All rights reserved.