2
mysql> desc gifts;
+---------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+----------------+
| giftID | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(80) | YES | | NULL | |
| filename | varchar(80) | YES | | NULL | |
| effectiveTime | datetime | YES | | NULL | |
+---------------+-------------+------+-----+---------+----------------+
ce qui suit est ok:
mysql> insert into gifts
-> values (10, "heart", "heart_shape.jpg", now());
Query OK, 1 row affected (0.05 sec)
, mais est-il un moyen de ne pas préciser le "10" ... et laissez chacun soit 11, 12, 13 ...?
je peux le faire en utilisant
mysql> insert into gifts (name, filename, effectiveTime)
-> values ("coffee", "coffee123.jpg", now());
Query OK, 1 row affected (0.00 sec)
mais doivent être tous donné les noms de colonnes. Y a-t-il un moyen de ne pas les spécifier et l'incrément automatique de la clé primaire fonctionne toujours? Merci.
Bien que ce soit l'opinion, en spécifiant explicitement les noms de colonnes est généralement bonne pratique, cela assure que si la table est modifiée de quelque façon à l'avenir (une colonne supplémentaire ajouté par exemple), les valeurs attendues vont dans le prévu colonnes. – ModulusJoe