Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wykonywanie wielu zapytań SQL w jednej instrukcji z PHP

Przekaż 65536 do mysql_connect jako piąty parametr.

Przykład:

$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
");

Kiedy pracujesz z mysql_fetch_*, mysql_num_rows lub mysql_affected_rows, tylko pierwsza instrukcja jest ważna.

Na przykład następujące kody, pierwsza instrukcja to INSERT, nie można wykonać mysql_num_rows i mysql_fetch_*. Można użyć mysql_affected_rows do zwrócenia liczby wstawionych wierszy.

$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;
");

Inny przykład, następujące kody, pierwsza instrukcja to SELECT, nie można wykonać mysql_affected_rows. Ale możesz wykonać mysql_fetch_assoc, aby uzyskać parę klucz-wartość wiersza wynikającą z pierwszej instrukcji SELECT, lub możesz wykonać mysql_num_rows, aby uzyskać liczbę wierszy na podstawie pierwszej instrukcji SELECT.

$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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql wybierz sumę pogrupuj według daty

  2. Jak nadać wszystkie uprawnienia użytkownikowi root w MySQL 8.0?

  3. Monitorowanie klastra Percona XtraDB — kluczowe wskaźniki

  4. Instalowanie WordPressa 5 na ZEIT teraz z hostingiem MySQL

  5. Wybierasz samodzielny serwer wyszukiwania pełnotekstowego:Sphinx czy SOLR?