В этой статье мы покажем, как создать базу данных MySQL, добавить в неё таблицу и заполнить данными при помощи командной строки. Для примера будем делать список товаров для книжного магазина.

Что внутри

  1. Подключиться к серверу и зайти в MySQL
  2. Создать базу данных
  3. Создать таблицу
  4. Создать запись в таблице
  5. Отредактировать запись
  6. Удалить строку, таблицу и базу данных
  7. Выйти из 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 для сайта — Просматриваем все бд на MySQL-сервере

Чтобы создать базу данных 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;

Результат должен быть таким:

Создание базы данных mysql с нуля — Добавляем информацию в таблицу таблицу

Отредактировать запись

Если вы случайно ввели значение с опечаткой, используйте команду UPDATE, чтобы отредактировать конкретное поле:

UPDATE название_таблицы SET название_столбца = “новое_значение” WHERE название_столбца = “значение“;

После SET укажите название столбца, в котором хотите изменить значение. А после WHERE — название какого-то другого столбца из этой же строки. Это нужно, чтобы помочь MySQL-серверу понять, куда именно вписывать новое значение.

Подставим реальные значения, чтобы исправить опечатку в слове Casal в названии второй книги:

UPDATE books SET title = "The Casual Vacancy" WHERE id = "2";

А после снова просмотрим таблицу и убедимся, что опечатки больше нет:

Cоздание базы данных mysql для сайта — Редактируем таблицу

Удалить строку, таблицу и базу данных

Удаление в 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

Была ли статья полезной?

Спасибо за отзыв!