mysqli::multi_query
(mysqli_multi_query) Perform a query on the database
The multi_query() / mysqli_multi_query() function performs one or more queries on the database. Queries are separated by semicolons.
Perform multiple queries to the database:
<?php
$mysqli = new mysqli ( "localhost" , "my_user" , "my_password" , "my_db" ) ;
if ( $mysqli -> connect_errno ) {
echo "Failed to connect to MySQL: " . $mysqli -> connect_error ;
exit ( ) ;
}
$sql = "SELECT Lastname FROM Persons ORDER BY LastName;" ;
$sql .= "SELECT Country FROM Customers" ;
// Perform multiple queries
if ( $mysqli -> multi_query ( $sql ) ) {
do {
//Storing the first result set
if ( $result = $mysqli -> store_result ( ) ) {
while ( $row = $result -> fetch_row ( ) ) {
printf ( "%s\n" , $row [ 0 ] ) ;
}
$result -> free_result ( ) ;
}
// If there are more result sets, print the separator
if ( $mysqli -> more_results ( ) ) {
printf ( "--------------\n" ) ;
}
// Prepare the next result set
} while ( $mysqli -> next_result ( ) ) ;
}
$mysqli -> close ( ) ;
?>
Perform multiple queries to the database:
<?php
$con = mysqli_connect ( "localhost" , "my_user" , "my_password" , "my_db" ) ;
if ( mysqli_connect_errno ( ) ) {
echo "Failed to connect to MySQL: " . mysqli_connect_error ( ) ;
exit ( ) ;
}
$sql = "SELECT Lastname FROM Persons ORDER BY LastName;" ;
$sql .= "SELECT Country FROM Customers" ;
// Perform multiple queries
if ( mysqli_multi_query ( $con , $sql ) ) {
do {
//Storing the first result set
if ( $result = mysqli_store_result ( $con ) ) {
while ( $row = mysqli_fetch_row ( $result ) ) {
printf ( "%s\n" , $row [ 0 ] ) ;
}
mysqli_free_result ( $result ) ;
}
// If there are more result sets, print the separator
if ( mysqli_more_results ( $con ) ) {
printf ( "--------------\n" ) ;
}
// Prepare the next result set
} while ( mysqli_next_result ( $con ) ) ;
}
mysqli_close ( $con ) ;
?>