sql >> Database >  >> RDS >> Mysql

Meerdere SQL-query's in één instructie uitvoeren met PHP

Pass 65536 naar mysql_connect als 5e parameter.

Voorbeeld:

$conn = mysql_connect('localhost','username','password', true, 65536 /* here! */) 
    or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
    INSERT INTO table1 (field1,field2) VALUES(1,2);

    INSERT INTO table2 (field3,field4,field5) VALUES(3,4,5);

    DELETE FROM table3 WHERE field6 = 6;

    UPDATE table4 SET field7 = 7 WHERE field8 = 8;

    INSERT INTO table5
       SELECT t6.field11, t6.field12, t7.field13
       FROM table6 t6
       INNER JOIN table7 t7 ON t7.field9 = t6.field10;

    -- etc
");

Als u met mysql_fetch_* of mysql_num_rows of mysql_affected_rows werkt, is alleen de eerste instructie geldig.

Bijvoorbeeld, de volgende codes, de eerste instructie is INSERT, u kunt mysql_num_rows en mysql_fetch_* niet uitvoeren. Het is oké om mysql_affected_rows te gebruiken om het aantal ingevoegde rijen terug te geven.

$conn = mysql_connect('localhost','username','password', true, 65536) or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
    INSERT INTO table1 (field1,field2) VALUES(1,2);
    SELECT * FROM table2;
");

Een ander voorbeeld, de volgende codes, de eerste instructie is SELECT, u kunt mysql_affected_rows niet uitvoeren. Maar u kunt mysql_fetch_assoc uitvoeren om een ​​sleutel-waardepaar van rijen te krijgen die het resultaat zijn van de eerste SELECT-instructie, of u kunt mysql_num_rows uitvoeren om het aantal rijen te krijgen op basis van de eerste SELECT-instructie.

$conn = mysql_connect('localhost','username','password', true, 65536) or die("cannot connect");
mysql_select_db('database_name') or die("cannot use database");
mysql_query("
    SELECT * FROM table2;
    INSERT INTO table1 (field1,field2) VALUES(1,2);
");


  1. Een lijst<> invoegen in de SQL Server-tabel

  2. Eenvoudig een webserver instellen met XAMPP

  3. Oracle SQL - Identificeer opeenvolgende waardebereiken

  4. Hoe om te gaan met een enkele aanhalingsteken in Oracle SQL