Php mySQL-insérez un nouvel enregistrement dans la table avec auto-increment sur la clé primaire

vous vous demandez s'il y a une version abrégée pour insérer un nouvel enregistrement dans une table qui a la clé primaire activée? (c'est à dire ne pas avoir à inclure la colonne de clé dans la requête) Disons que la colonne clé S'appelle ID, et que les autres colonnes sont Fname, Lname, et Website

$query = "INSERT INTO myTable VALUES ('Fname', 'Lname', 'Website')";
47
demandé sur JimmyJammed 2011-09-21 01:42:22

5 réponses

utilisez le mot clé par défaut:

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

vous pouvez aussi spécifier les colonnes, (ce qui est une meilleure pratique):

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

Référence:

100
répondu regality 2015-06-13 03:26:08

je préfère ce syntaxis:

$query = "INSERT INTO myTable SET fname='Fname',lname='Lname',website='Website'";
12
répondu jenkin90 2011-09-20 21:48:39
$query = "INSERT INTO myTable VALUES (NULL,'Fname', 'Lname', 'Website')";

Simplement en laissant la valeur de l'IA clé primaire NULL assignera une valeur incrémentée automatique.

5
répondu Korvin Szanto 2014-07-01 17:28:57

c'est la méthode phpMyAdmin.

$query = "INSERT INTO myTable
         (mtb_i_idautoinc, mtb_s_string1, mtb_s_string2) 
         VALUES
         (NULL, 'Jagodina', '35000')";
3
répondu minimal 2013-06-04 06:39:47

Vous pouvez également utiliser des guillemets vides pour la colonne auto_ incrément. quelque chose comme cela. Il a travaillé pour moi.

$query = "INSERT INTO myTable VALUES ('','Fname', 'Lname', 'Website')";
0
répondu Rahul Bharati 2018-08-01 15:36:18