Инструменты пользователя

Инструменты сайта


software:development:web:docs:learn:mariadb:вatabase_creation

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
software:development:web:docs:learn:mariadb:вatabase_creation [2024/02/25 20:38] – [Выбор и заказ данных из базы данных MySQL] vladpolskiysoftware:development:web:docs:learn:mariadb:вatabase_creation [2024/02/25 21:35] (текущий) – [Создание новой базы данных] vladpolskiy
Строка 69: Строка 69:
 <file html index.php> <file html index.php>
 <?php <?php
-$servername = "localhost"; +$servername = "localhost"; // Адрес сервера базы данных 
-$username = "root"; +$username = "root";  // Имя пользователя базы данных 
-$password = "********";+$password = "********"; // Пароль пользователя базы данных
  
 // Создаём соединение // Создаём соединение
Строка 549: Строка 549:
        echo "0 results";        echo "0 results";
      }      }
-     ?> +     // Закроем соединение 
 +     $conn->close(); 
 +     ?>
 </file> </file>
 Строки кода для пояснения из примера выше: Строки кода для пояснения из примера выше:
Строка 575: Строка 577:
 {{:software:development:web:docs:learn:mariadb:mariadb_creat_database_18.png?700|}} {{:software:development:web:docs:learn:mariadb:mariadb_creat_database_18.png?700|}}
 \\   \\  
-=====Выбор и заказ данных из базы данных MySQL===== +=====Удаление данных из таблицы MySQL с использованием MySQLi ===== 
-Предложение ORDER BY используется для сортировки набора результатов в порядке возрастания или убывания+Оператор DELETE используется для удаления записей из таблицы:
- +
-Предложение ORDER BY по умолчанию сортирует записи в порядке возрастания. Чтобы отсортировать записи в порядке убывания, используйте ключевое слово DESC.+
 <code> <code>
-SELECT column_name(s) FROM table_name ORDER BY column_name(s) ASC|DESC +DELETE FROM table_name 
 +WHERE some_column = some_value
 </code> </code>
-**Выбор и заказ данных с помощью MySQLi** +**Обратите внимание на предложение WHERE в синтаксисе DELETE: Предложение WHERE указываеткакую запись или записи следует удалить. Если вы опустите предложение WHERE, все записи будут удалены!** 
-В следующем примере выбираются столбцы идентификатора, имени и фамилии из таблицы MyGuests. Записи будут упорядочены по столбцу фамилии:+Давайте посмотрим на таблицу «MyGuests»: 
 +\\   
 +{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_18.png?700|}} 
 +\\   
 +В следующих примерах удаляется запись с идентификатором = 5 в таблице «MyGuests»:
 В тело нашей страницы между тегами <body> и </body> вставим следующий php код В тело нашей страницы между тегами <body> и </body> вставим следующий php код
 <file html index.php> <file html index.php>
Строка 597: Строка 602:
        die("Ошибка соединения: " . $conn->connect_error);        die("Ошибка соединения: " . $conn->connect_error);
      }      }
-     // подготовить +     // sql to delete a record 
-     $sql = "SELECT id, firstname, lastname FROM MyGuests ORDER BY lastname"+     $sql = "DELETE FROM MyGuests WHERE id=5";
-     $result = $conn->query($sql);+
  
-     if ($result->num_rows > 0) { +     if ($conn->query($sql) === TRUE) { 
-       // output data of each row +      echo "Record deleted successfully";
-       while($row $result->fetch_assoc()) { +
-         echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>"; +
-       }+
      } else {      } else {
-       echo "0 results";+     echo "Error deleting record: . $conn->error;
      }      }
-     ?> +     // Закроем соединение 
 +     $conn->close(); 
 +     ?>
 </file> </file>
-Строки кода для пояснения из примера выше: 
  
-Сначала мы настраиваем SQL-запрос, который выбирает столбцы идентификатора, имени и фамилии из таблицы MyGuests. Записи будут упорядочены по столбцу фамилииСледующая строка кода запускает запрос и помещает полученные данные в переменную с именем $result.+\\   
 +Откроем нашу страницу в браузере, где увидим надпись: Запись успешно удалена 
 +\\   
 +{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_19.png?700|}} 
 +\\   
 +Проверим записи в таблице MyGuests базы данных my_DB в MariaDB с помощью PhpMyAdmin 
 +\\   
 +{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_20.png?700|}} 
 +\\   
 +=====Обновление данных в таблице MySQL, используя MySQLi ===== 
 +Оператор UPDATE используется для обновления существующих записей в таблице: 
 +<code> 
 +UPDATE table_name 
 +SET column1=valuecolumn2=value2,... 
 +WHERE some_column=some_value  
 +</code> 
 +**Обратите внимание на предложение WHERE в синтаксисе UPDATE: Предложение WHERE указывает, какую запись или записи следует обновить. Если вы опустите предложение WHERE, все записи будут обновлены!** 
 +Давайте посмотрим на таблицу «MyGuests»: 
 +\\   
 +{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_20.png?700|}} 
 +\\   
 +В следующих примерах запись обновляется с id=4 в таблице «MyGuests». 
 +В тело нашей страницы между тегами <body> и </body> вставим следующий php код 
 +<file html index.php> 
 +     <?php 
 +     $servername = "localhost";  
 +     $username = "root"; 
 +     $password = "******"; 
 +     $dbname = "my_DB"; 
 +     // Создаём соединение 
 +     $conn = new mysqli($servername, $username, $password, $dbname); 
 +     // Проверим подключение 
 +     if ($conn->connect_error) { 
 +       die("Ошибка соединения: " $conn->connect_error); 
 +     } 
 +     $sql = "UPDATE MyGuests SET lastname='Doe' WHERE id=2";
  
-Затем проверяется, function num_rows()возвращено ли более нуля строк.+     if ($conn->query($sql) === TRUE) { 
 +      echo "Record updated successfully"; 
 +     } else { 
 +       echo "Error updating record: " . $conn->error; 
 +      } 
 +     // Закроем соединение 
 +     $conn->close(); 
 +     ?> 
 +</file>
  
-Если возвращается более нуля строк, функция fetch_assoc()помещает все результаты в ассоциативный массив, который мы можем просмотреть в цикле. Цикл while()проходит по результирующему набору и выводит данные из столбцов id, firstname и Lastname. 
 \\   \\  
-Откроем нашу страницу в браузере, где увидим надпись: \\   +Откроем нашу страницу в браузере, где увидим надпись: Запись успешно удалена
-id: 1 - Name: John Doe\\   +
-id: 5 - Name: John Doe\\   +
-id: 8 - Name: John Doe\\   +
-id: 7 - Name: Julie Dooley\\   +
-id: 10 - Name: Julie Dooley\\   +
-id: 6 - Name: Mary Moe\\   +
-id: 9 - Name: Mary Moe\\   +
-id: 4 - Name: Vlad Polskiy\\  +
 \\   \\  
-{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_17.png?700|}}+{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_21.png?700|}}
 \\   \\  
-Проверим создание новой записи в таблице MyGuests базы данных my_DB в MariaDB с помощью PhpMyAdmin+Проверим записи в таблице MyGuests базы данных my_DB в MariaDB с помощью PhpMyAdmin
 \\   \\  
-{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_18.png?700|}}+{{:software:development:web:docs:learn:mariadb:mariadb_creat_database_22.png?700|}}
 \\   \\  
 +=====Ограничение выбора данных из базы данных MySQL =====
 +MySQL предоставляет предложение LIMIT, которое используется для указания количества возвращаемых записей.
 +
 +Предложение LIMIT упрощает кодирование многостраничных результатов или разбиение на страницы с помощью SQL и очень полезно для больших таблиц. Возврат большого количества записей может повлиять на производительность.
 +
 +Предположим, мы хотим выбрать все записи от 1 до 30 (включительно) из таблицы «Заказы». Тогда SQL-запрос будет выглядеть так:
 +<code>
 +$sql = "SELECT * FROM Orders LIMIT 30";
 +</code>
 +При выполнении приведенного выше SQL-запроса он вернет первые 30 записей.
 +
 +Что делать, если мы хотим выбрать записи с 16 по 25 (включительно)?
 +
 +Mysql также предоставляет способ справиться с этим: используя OFFSET.
 +
 +В приведенном ниже SQL-запросе говорится: «Вернуть только 10 записей, начать с записи 16 (OFFSET 15 15)»:
 +<code>
 +$sql = "SELECT * FROM Orders LIMIT 10 OFFSET 15";
 +</code>
 +Вы также можете использовать более короткий синтаксис для достижения того же результата:
 +<code>
 +$sql = "SELECT * FROM Orders LIMIT 15, 10";
 +</code>
 +Обратите внимание, что при использовании запятой цифры меняются местами. 
 +
 =====Ссылки и Примечания===== =====Ссылки и Примечания=====
 [[https://www.w3schools.com/php/php_mysql_intro.asp|Оригинал статьи База данных PHP MySQL]]\\   [[https://www.w3schools.com/php/php_mysql_intro.asp|Оригинал статьи База данных PHP MySQL]]\\  
 [[https://www.mysql.com/|Оригинальный сайт программы  [[https://www.mysql.com/|Оригинальный сайт программы
 MySQL]] MySQL]]
software/development/web/docs/learn/mariadb/вatabase_creation.1708882710.txt.gz · Последнее изменение: vladpolskiy