У цій статті ми покажемо, як створити базу даних MySQL, додати таблицю і заповнити даними за допомогою командного рядка. Для прикладу робитимемо список товарів для книгарні.
Зміст
- Підключитися до сервера та зайти до MySQL
- Створити базу даних
- Створити таблицю
- Створити запис у таблиці
- Відредагувати запис
- Видалити рядок, таблицю та базу даних
- Вийти з MySQL
Підключитися до сервера та зайти до MySQL
Спочатку підключіться до сервера по SSH. Зазвичай хостинг-провайдери надсилають логін та пароль для підключення у листі про активацію хостингу. У нас цей лист називається по-різному залежно від типу хостингу: «Ваш віртуальний хостинг готовий до використання», «Це ваш VPS готовий?» або «Виділений сервер замовляли?».
Після підключення до сервера авторизуйтеся як користувач MySQL:
mysql -u ім’я_користувача -p
Якщо підключаєтеся до MySQL вперше, в системі буде тільки один користувач — root . Пароль від root лежить у конфігураційному файлі .my.cnf. Ви можете відкрити його за допомогою команди cat:
cat .my.cnf
У файлі буде стандартний пароль. Він може виявитися неробочим, якщо його змінили вручну та забули оновити у файлі. У цьому випадку спробуйте скинути пароль.
Створити базу даних
Усі команди MySQL повинні закінчуватися крапкою з комою. Цей знак означає закінчення запиту. Без нього MySQL-сервер не зрозуміє, що перед ним команда, тому після натискання клавіші Enter нічого не станеться.
Якщо забули закінчити команду за правилами, вводити її знову не обов’язково. Просто поставте крапку з комою в наступному рядку і знову натисніть клавішу Enter.
Перед тим, як створити нову базу даних, перевірте список усіх бд на MySQL-сервері за допомогою команди SHOW DATABASES:
SHOW DATABASES;
Результат виглядатиме приблизно так:
Для створення бази даних MySQL використовуйте команду CREATE DATABASE:
CREATE DATABASE назва_бази_даних;
Для нашого прикладу з книгарнею підійде назва bookstore:
CREATE DATABASE bookstore;
Просто створити базу даних недостатньо. Щоб із нею працювати, потрібно також обрати її окремою командою. Це доведеться робити щоразу після підключення до MySQL.
USE bookstore;
Створити таблицю
Інформація в базі даних MySQL зберігається в таблицях. Їх потрібно створювати окремо за допомогою CREATE TABLE. Ви вводите однією командою всю структуру таблиці:
CREATE TABLE назва_таблиці (
назва_стовпця ПАРАМЕТР,
назва_стовпця ПАРАМЕТР,
назва_стовпця ПАРАМЕТР
);
Параметр — це правило для інформації всередині стовпця. З його допомогою можна зробити поле обов’язковим для заповнення, дозволити використовувати в стовпці лише цифри або навпаки лише літери.
Ось невеликий список параметрів, що часто використовуються:
- AUTO_INCREMENT — автоматично нумерувати кожен новий запис. Можна зробити окремий стовпець із нумерацією рядків у таблиці;
- CHAR — можна використовувати лише символи;
- INT — можна використовувати лише цілі числа;
- NOT NULL — поле не повинно бути порожнім;
- PRIMARY KEY — у кожному рядку мають бути лише унікальні значення.
Зазвичай параметри перераховують один за одним прямо в рядку зі стовпцем, як у прикладі вище. Але є один виняток параметр PRIMARY KEY. Коли він є у команді більше одного разу, MySQL-сервер показує помилку.
Тому, якщо в таблиці унікальні значення повинні бути в декількох стовпцях, запишіть PRIMARY KEY окремим рядком і додайте назви стовпців у дужках:
PRIMARY KEY (назва_стовпця, назва_стовпця, назва_стовпця)
Тепер давайте створимо першу таблицю з назвою books та чотирма стовпцями: номер запису, назва книги, автор і ціна. Команда для створення такої таблиці буде виглядати так:
CREATE TABLE books( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, title CHAR(100) NOT NULL, author CHAR(40) NOT NULL, price INT NOT NULL );
Створити запис у таблиці
Таблицю створили, залишається заповнити її інформацією. Це роблять за допомогою команди INSERT. Ви вводите однією командою значення одразу для всього рядка:
INSERT INTO назва_таблиці (назва_стовпця1, назва_стовпця2, назва_стовпця3) VALUES (“значення1“, “значення2“, “значення3“);
Зауважте, що значення, які ви хочете помістити в стовпці, потрібно брати в лапки, а назви таблиць та стовпців — ні.
Стовпець id не вказуємо, тому що в ньому будуть лише цифри, які MySQL додасть автоматично завдяки параметру AUTO_INCREMENT.
Підставимо значення для першого рядка:
INSERT INTO books (title,author,price) VALUES("Green Mile","Stephen King","17");
Потім додамо ще один рядок:
INSERT INTO books (title,author,price) VALUES("The Casal Vacancy", "J.K.Rowling", "23");
І подивимося, як тепер виглядає таблиця:
SELECT * FROM books;
Результат має бути таким:
Відредагувати запис
Якщо ви випадково ввели значення з помилкою, використовуйте команду UPDATE, щоб відредагувати конкретне поле:
UPDATE назва_таблиці SET назва_стовпця = “нове_значення” WHERE назва_стовпця = “значення“;
Після SET вкажіть назву стовпця, де хочете змінити значення. А після WHERE — назву якогось іншого стовпця з цього рядка. Це потрібно, щоб допомогти MySQL серверу зрозуміти, куди саме вписувати нове значення.
Підставимо реальні значення, щоб виправити помилку в слові Casal у назві другої книги:
UPDATE books SET title = "The Casual Vacancy" WHERE id = "2";
А потім знову переглянемо таблицю і переконаємося, що помилки більше немає:
Видалити рядок, таблицю та базу даних
Видалення MySQL не вимагає додаткового підтвердження. Все видаляється з першого разу, і скасувати це не можна, тому використовуйте команди акуратно.
Якщо якийсь рядок у таблиці більше не потрібний, видаліть його за допомогою команди DELETE FROM:
DELETE FROM назва_таблиці WHERE назва_стовпця = “значення_стовпця“;
Допустимо, книги “The Casual Vacancy” насправді немає у продажу. Видалимо рядок із нею.
DELETE FROM books WHERE id = "2";
Якщо хочете очистити всі рядки відразу, але зберегти структуру таблиці, використовуйте TRUNCATE:
TRUNCATE TABLE назва_таблиці;
Щоб повністю видалити таблицю, скористайтеся командою DROP:
DROP TABLE назва_таблиці;
Схожа команда видалить базу даних MySQL:
DROP DATABASE назва_бази_даних;
Вийти з MySQL
Наприкінці роботи відключіться від MySQL-сервера:
/q