sql >> Database teknologi >  >> RDS >> Mysql

PHP Indsæt data fra en tabel til en anden

Når PHP sender din indsættelsesforespørgsel til MySQL, ender den med at se sådan her ud:

INSERT INTO content2 (d1, d2, d3) VALUES (John, Mary, Julie);

Fordi der ikke er anførselstegn omkring "John", "Mary" og "Julie", tror MySQL, at du henviser til andre kolonnenavne. Den hurtige og beskidte løsning ville være at tilføje anførselstegn til din forespørgsel, men som @tadman siger, bør du aldrig bruge denne forespørgselsstil, og bør i stedet bruge bind_param for at tilføje dine variabler til forespørgslen.

Men hvis alt du vil gøre er at kopiere fra en tabel til en anden, som @Dan Bracuk siger, kan du gøre dette med en enkelt forespørgsel:

INSERT INTO content2 (d1, d2, d3)
SELECT d1, d2, d3
FROM content


  1. En oversigt over den nye DBaaS fra MariaDB - SkySQL

  2. Er INSERT RETURNING garanteret at returnere tingene i den rigtige rækkefølge?

  3. Tips til at gemme dine MariaDB-sikkerhedskopier i skyen

  4. SLIP alle fremmednøgler i MYSQL-databasen