Урок 19 вставка даних в базу даннихrustutorial
У цьому уроці ми розглянемо, як вставляти дані в БД безпосередньо з ваших РНР-скриптів.
Вставка даних з використанням SQL
Ви використовуєте SQL для вставки даних в БД точно так же, як використовуєте SQL для створення БД і таблиць. Синтаксис SQL-запиту такий:
Як бачите, ви можете оновлювати кілька стовпців в одному SQL-операторі, вказуючи їх у розділеному комами списку. Але зрозуміло, можна також специфікувати тільки один стовпець і одне значення. Стовпці, які не йдеться в даному SQL-операторі, залишаться порожніми.
Приклад: Вставка нової персони в таблицю
Оператор SQL може виглядати так:
Як бачите, SQL-оператори можуть бути надто довгими, і можна легко втратити слід. Тому краще записувати SQL-оператор злегка інакше:
Тут SQL-оператор будується з поділом пропозиції на невеликі частини з подальшим об'єднанням їх в змінну $ strSQL.
На практиці немає різниці в застосуванні того чи іншого методу, але при роботі з великими таблицями стає вкрай важливою можливість "тримати слід", так що вибирайте найбільш підходящий метод.
Спробуємо виконати наступний код для вставки Gus Goose в БД:
Збереження призначеного для користувача введення в БД
Часто буває необхідно зберегти в БД дані, що вводяться користувачем.
Ви, ймовірно, вже зрозуміли, що для цього можна створити форму, як в Уроці 11. а значення з форми можна вставити в SQL-оператор. Припустимо, у вас є проста форма:
Ця форма відправляється в файл insert.php. де ви, як показано в Уроці 11, можете отримати для користувача введення, запросивши вміст форми. В даному конкретному випадку SQL-оператор може бути таким:
Аналогічно можна зробити запит кук, сесій рядків запиту etc.
Найбільш поширені помилки початківців
Спочатку ви, можливо, будете отримувати купу повідомлень про помилки при спробах оновити БД. При роботі з БД абсолютно неприпустимі ніякі похибки. Невірно поставлена кома може означати, що БД не оновлюється, і ви отримаєте повідомлення про помилку. Нижче ми описуємо найбільш поширені помилки.
Невірний тип даних
Важливо, щоб дані і тип даних стовпця відповідали один одному. Кожен стовпець може містити дані певного типу. Наступний скріншот показує типи даних таблиці "people" з нашого прикладу.
Видається помилка, якщо ви, наприклад, спробуєте вставити текст або число в поле даних. Отже, встановлюйте тип даних якомога точніше.
Нижче перераховані найбільш споживані типи даних: