10
votes

MySQL Insérer dans 2 tables

Je veux faire une insertion dans 2 tables

visites: xxx

enregistrement: xxx

i Vous voulez quelque chose comme: xxx

Je me demande si c'est possible


0 commentaires

4 Réponses :


11
votes

Ce n'est pas possible avec une requête en tant que Insérer ne peut insérer que des données sur une table dans MySQL. Vous pouvez soit

  1. Écrivez ceci comme deux questions et exécutez-les comme un lot
  2. créer une procédure stockée qui exécuterait deux commandes inserts

    Vous pouvez envelopper ces insertions en transaction si vous devez vous assurer que les deux requêtes écriront les données.


0 commentaires

8
votes

On dirait que le problème que vous essayez de résoudre est d'obtenir la valeur de l'incrémentation automatique de la ligne "visites" pour insérer dans "Enregistrement". Ai-je raison?

Si tel est le cas, vous pouvez simplement utiliser le last_insert_id () fonction comme ceci: xxx


0 commentaires

-1
votes
INSERT INTO designation as de,
                department as da,
                    profile as pr

                                  (designation_name,
                                   depart_id,
                                   id,
                                   username,
                                   department,
                                   designation)


      select de.designation_name,
             de.depart_id,da.id,
             pr.username,
             pr.department,
             pr.designation 
       from 
              designation,
              department,
              profile

          de.designation_name='project manager' AND de.id='1'         OR
          de.depart_id='2' AND de.id='2'                              OR  
          da.id='2'                                                   OR  
          pr.username='kapil.purohit' AND pr.id='9' AND pr.status='1' OR 
          pr.department='1' AND pr.id='9'                             OR  
          pr.designation='3' AND pr.id='9' AND pr.status='1'

       WHERE               
               de.id    =   da.id   AND
                   da.id    =   pr.id   AND
                   de.id    =   pr.id   AND
                                    ORDER BY de.id DESC

2 commentaires

Est cette syntaxe mysql? Dans MySQL 5.5, je reçois une erreur de syntaxe.


Erreur de syntaxe causée par l'endroit où dans le mauvais endroit et inutile et avant la commande par. Ce code concerne la question, mais ne répond pas vraiment spécifiquement. Il semble également être invalide logiquement et syntaxiquement.



0
votes

Vous pouvez toujours faire quelque chose comme ça xxx


0 commentaires