Maison  >  Questions et réponses  >  le corps du texte

Dans MySQL, lors de l'écriture de données, devez-vous d'abord écrire les données, puis leur donner un identifiant, ou devez-vous d'abord donner l'identifiant, puis écrire les données à insérer ?

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

伊谢尔伦伊谢尔伦2710 Il y a quelques jours532

répondre à tous(2)je répondrai

  • 过去多啦不再A梦

    过去多啦不再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 :

    répondre
    0
  • PHP中文网

    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. . . .

    répondre
    0
  • Annulerrépondre