PHP MySQLi Functions

Функція PHP mysqli_query()

Матеріал представлений на сторінці за w3schools та php.net ресурсами.

Загальна інформація

1. Основи

Документація php query

Метод класу mysqli

PHP mysqli_query виконує запит до Бази Даних.

Синтаксис

Як на мене одна із найчастіше вживаних функцій, що застосовується для роботи із Сервером Бази Даних.

Функція mysqli_query() може бути виконана, як в об'єктно-орієнтовному стилі програмування, так і в процедурному стилі програмування.


Наприклад, застосуємо скрипт в ООП:

// створюємо обєкт зєднання з БД
$db = new mysqli("host", "user", "pass", "DB");
//SQL-запит
$query = "SELECT * FROM My_Test";
// виконуємо запит до БД
$results = $db->query($query);
// закриваємо зєднання з БД
$db->close();

Або зразок процедурного стилю:

// створюємо обєкт зєднання з БД
$db=mysqli_connect("host","user","pass","DB");
//SQL-запит
$query = "SELECT * FROM My_Test";
// виконуємо запит 
mysqli_query($db,$query);
// закриваємо зєднання з БД
mysqli_close($db);

Переглянемо ще такий скрипт в ООП стилі:

<?php
$db 
= new mysqli ("host" "user""pass" "DB");

/* перевіряємо зєднання */
if ($db ->connect_errno) {
    
printf("Помилка зєднання: %s\n" $db->connect_error );
    exit();
}

/* Створення таблиці не повертає результуючої вибірки даних із БД */
$query_01 = "CREATE TEMPORARY TABLE myCity LIKE City";
if ($db-> query($query_01 ) === TRUE ) {
    
printf ("Таблиця myCity успішно створена.\n" );
}

/* Запит Select, що повертає результуючу вибірку даних*/
$query_02 = "SELECT Name FROM City LIMIT 10";
if ($result  $db->query( $query_02)) {
    
printf( "Запит Select повернув %d рядків.\n" ,
    
$result-> num_rows);

    
/* Очищуємо результуючу вибірку даних */
    
$result-> free_result();
}

/* якщо ми отримуємо велику кількість даних, використаємо MYSQLI_USE_RESULT */
if ( $result  $db->query
     ("SELECT * FROM City"MYSQLI_USE_RESULT )) {
    
/* Зауважте, ніяка інша функція не буде виконуватись поки результуюча вибірка даних із БД не буде закрита. Всі запити повернуть помилку'out of sync'*/
    
if (!$db ->query( "SET @a:='це не буде працювати'")) {
        
printf("Error: %s\n" $db->error);
    }
    
/* Очищуємо результуючу вибірку даних */
     $result->close();
}

$db->close();
?>