Maison > Questions et réponses > le corps du texte
Dans MySQL, l'identifiant est automatiquement augmenté. Maintenant, si vous y écrivez une donnée, le processus spécifique consiste à écrire d'abord les données, puis à donner un identifiant aux données, ou à donner d'abord l'identifiant, puis à insérer l'identifiant. données à insérer. Écrivez-les en
. Juste curieux
过去多啦不再A梦2017-05-18 10:53:19
MYSQL a déjà calculé l'ID d'auto-incrémentation qui devra être renseigné la prochaine fois
Comme le montre l'image ci-dessous. La base de données comporte 62 lignes et la valeur est passée à 63.
Si l'ID n'est pas spécifié, MYSQL le remplira tout seul. Si le remplissage est inférieur à l'incrément automatique, une erreur sera signalée. Si le remplissage est supérieur à l'incrément automatique, l'incrément automatique deviendra le numéro de remplissage ! + 1
Obtenir l'ID d'insertion :
MYSQLI : méthode mysqli_insert_id
PDO : méthode PDO::lastInsertId
MYSQL : méthode mysql_insert_id
La méthode MYSQL de connexion à la base de données est obsolète et pourra être supprimée dans les versions futures
Le SQL ci-dessous peut réaliser ce que vous voulez, mais je ne suis pas sûr que ce soit une bonne idée. De plus, est-il vraiment bon de définir la structure des données comme celle-ci ?
INSERT INTO sta_log_fun(`FCNAME`,`STATUS`) VALUES('WOQU',(SELECT auto_increment FROM information_schema.`TABLES` WHERE TABLE_SCHEMA='test2' AND TABLE_NAME='sta_log_fun'));
L'effet est comme indiqué ci-dessous :
PHP中文网2017-05-18 10:53:19
Je n'ai pas fait de recherches, mais je suppose que c'est la même chose que lorsque nous insérons manuellement des données, elles sont écrites ensemble. Obtenez la valeur maximale de l'identifiant de table actuel, ajoutez la valeur d'incrémentation automatique définie et insérez les données ensemble. . . .