SQL — Урок 1. Создание базы данных и таблиц
Итак, вы установили MySQL, и мы начинаем осваивать язык SQL. В уроке 3 по основам баз данных, мы создали концептуальную модель маленькой БД для форума. Пришло время реализовать ее в СУБД MySQL.
Для этого прежде всего надо запустить сервер MySQL. Идем в системное меню Пуск — Программы — MySQL — MySQL Server 5.1 — MySQL Command Line Client. Откроется окно, предлагающее ввести пароль.
Нажимаем Enter на клавиатуре, если вы не указывали пароль при настройке сервера или указываем пароль, если вы его задавали. Ждем приглашения mysql>.
Нам надо создать базу данных, которую мы назовем forum. Для этого в SQL существует оператор create database. Создание базы данных имеет следующий синтаксис:
create database имя_базы_данных;
Максимальная длина имени БД составляет 64 знака и может включать буквы, цифры, символ «_» и символ «$». Имя может начинаться с цифры, но не должно полностью состоять из цифр. Любой запрос к БД заканчивается точкой с запятой (этот символ называется разделителем — delimiter). Получив запрос, сервер выполняет его и в случае успеха выдает сообщение «Query OK . «
Итак, создадим БД forum:
Нажимаем Enter и видим ответ «Query OK . «, означающий, что БД была создана:
Вот так все просто. Теперь в этой базе данных нам надо создать 3 таблицы: темы, пользователи и сообщения. Но перед тем, как это делать, нам надо указать серверу в какую именно БД мы создаем таблицы, т.е. надо выбрать БД для работы. Для этого используется оператор use. Синтаксис выбора БД для работы следующий:
use имя_базы_данных;
Итак, выберем для работы нашу БД forum:
Нажимаем Enter и видим ответ «Database changed» — база данных выбрана.
Выбирать БД необходимо в каждом сеансе работы с MySQL.
Для создания таблиц в SQL существует оператор create table. Создание базы данных имеет следующий синтаксис:
create table имя_таблицы (имя_первого_столбца тип, имя_второго_столбца тип, . имя_последнего_столбца тип );
Требования к именам таблиц и столбцов такие же, как и для имен БД. К каждому столбцу привязан определенный тип данных, который ограничивает характер информации, которую можно хранить в столбце (например, предотвращает ввод букв в числовое поле). MySQL поддерживает несколько типов данных: числовые, строковые, календарные и специальный тип NULL, обозначающий отсутствие информации. Подробно о типах данных мы будем говорить в следующем уроке, а пока вернемся к нашим таблицам. В них у нас всего два типа данных — целочисленные значения (int) и строки (text). Итак, создадим первую таблицу — Темы:
Нажимаем Enter — таблица создана:
Итак, мы создали таблицу topics (темы) с тремя столбцами:
id_topic int — id темы (целочисленное значение),
topic_name text — имя темы (строка),
id_author int — id автора (целочисленное значение).
Аналогичным образом создадим оставшиеся две таблицы — users (пользователи) и posts (сообщения):
Итак, мы создали БД forum и в ней три таблицы. Сейчас мы об этом помним, но если наша БД будет очень большой, то удержать в голове названия всех таблиц и столбцов просто невозможно. Поэтому надо иметь возможность посмотреть, какие БД у нас существуют, какие таблицы в них присутствуют, и какие столбцы эти таблицы содержат. Для этого в SQL существует несколько операторов:
show databases — показать все имеющиеся БД,
show tables — показать список таблиц текущей БД (предварительно ее надо выбрать с помощью оператора use),
describe имя_таблицы — показать описание столбцов указанной таблицы.
Давайте попробуем. Смотрим все имеющиеся базы данных (у вас она пока одна — forum, у меня 30, и все они перечислены в столбик):
Теперь посмотрим список таблиц БД forum (для этого ее предварительно надо выбрать), не забываем после каждого запроса нажимать Enter:
В ответе видим названия наших трех таблиц. Теперь посмотрим описание столбцов, например, таблицы topics:
Первые два столбца нам знакомы — это имя и тип данных, значения остальных нам еще предстоит узнать. Но прежде мы все-таки узнаем какие типы данных бывают, какие и когда следует использовать.
А сегодня мы рассмотрим последний оператор — drop, он позволяет удалять таблицы и БД. Например, давайте удалим таблицу topics. Так как мы два шага назад выбирали БД forum для работы, то сейчас ее выбирать не надо, можно просто написать:
drop table имя_таблицы;
Теперь снова посмотрим список таблиц нашей БД:
Наша таблица действительно удалена. Теперь давайте удалим и саму БД forum (удаляйте, не жалейте, ее все равно придется переделывать). Для этого напишем:
drop database имя_базы данных;
И убедитесь в этом, сделав запрос на все имеющиеся БД:
У вас, наверно, нет ни одной БД, у меня их стало 29 вместо 30.
На сегодня все. Мы научились создавать базы данных и таблицы, удалять их и извлекать информацию об имеющихся базах данных, таблицах и их описаниях.

Онлайн-курс. Освойте востребованную профессию с зарплатой от 70 000 руб в месяц!
Теперь нажмите кнопку, что бы не забыть адрес и вернуться к нам снова.
admin@site-do.ru
site-do.ru © 2009-2019 Копировать материалы сайта запрещено!
За нарушение авторских прав предусмотрена уголовная ответственность!
Телефон редакции +7(499)346-89-56
127051, г.Москва, Цветной бульвар, д. 11, стр. 6, офис 405.
Создание базы данных в MySQL
Инструкция о том, как создать новую базу данных в MySQL несколькими способами, добавить пользователей и выдать им полномочия на доступ к базе.
Эта инструкция — часть курса «MySQL для новичков».
Смотреть весь курс
Введение
В этой небольшой инструкции мы покажем, как создать новую базу данных в MySQL несколькими способами, как добавить пользователей и выдать им полномочия на доступ к базе.
Подготовка
Перед началом работы у вас должен быть установлен и настроен MySQL-сервер. В этой статье мы не будем показывать, как это сделать. Если у вас еще нет готового сервера, почитайте нашу статью, там мы пошагово описали процесс установки и первоначальной настройки MySQL.
Мы будем работать с сервером, развернутым на виртуальной машине Selectel.
Так как это удаленный сервер, нам понадобится его внешний IP-адрес. В этих примерах мы будем использовать адрес 82.202.199.34.
Подключение к серверу и создание новой базы
Все операции будем показывать на двух примерах: консольный клиент и phpMyAdmin. Если у вас другой инструмент для подключения к серверу, почитайте его документацию или используйте SQL-команды, которые мы будем выполнять при работе через консольный клиент. Они универсальны и подойдут для любого инструмента.
Через консоль
Подключимся к удаленному серверу MySQL:
mysql -u root -h 82.202.199.34 -p
После ввода этой команды нужно ввести пароль от пользователя root, который вы указывали на этапе установки и первоначальной настройки СУБД.
Для начала посмотрим, какие уже есть созданные базы данных:
show databases;
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | test | +--------------------+
Это все служебные базы. Мы не будем их трогать, а создадим свою БД. Для этого выполним команду для создания новой базы данных MySQL:
CREATE DATABASE my_db_cli;
Снова посмотрим список всех баз:
show databases;
Видим, что наша БД появилась в списке:
+--------------------+ | Database | +--------------------+ | information_schema | | my_db_cli | | mysql | | performance_schema | | sys | | test | +--------------------+
Через phpMyAdmin
Чтобы указать сервер для подключения, нужно отредактировать файл config.inc.php. В зависимости от вашей ОС или дистрибутива Linux, этот файл может находиться в разных директориях, поэтому мы не будем указывать конкретный путь. Откройте файл и добавьте в него строчку:
$cfg['Servers'][$i]['host'] = '82.202.199.34';
Теперь откройте интерфейс phpMyAdmin и залогиньтесь на сервер. В левой части экрана находится список созданных баз данных. Мы видим уже созданную нами ранее базу my_db_cli.
Создадим еще одну базу. Для этого над списком БД нажмите кнопку «Создать БД».

Укажем имя новой базы, а кодировку оставим по умолчанию. В нашем примере это:
utf8mb4_unicode_ci.

База данных создана, и теперь она появилась в списке слева:

Настройка и проверка доступа к базе данных
Сейчас у нас есть только root-пользователь, который имеет полный доступ к серверу и может работать с любой БД. Нам нужно создать новых пользователей и выдать им полномочия, чтобы каждый мог работать только с одной базой.
Через консоль
Создадим нового пользователя:
CREATE USER 'user_cli'@'%' IDENTIFIED BY 'password';
Знак процента означает, что пользователь может подключаться к серверу с любого хоста. Теперь выдадим этому пользователю полный доступ на базу my_db_cli:
GRANT ALL PRIVILEGES ON my_db_cli.* TO 'user_cli'@'%' WITH GRANT OPTION;
Через phpMyAdmin
Теперь сделаем то же самое через phpMyAdmin. Переходим на вкладку «Учетные записи пользователей» и в нижней части экрана нажимаем «Добавить учетную запись пользователя».

В следующем окне указываем имя пользователя, хост и пароль.

После создания пользователя сразу откроется экран настройки полномочий. Мы хотим выдать права только на определенную БД, поэтому перейдем на вкладку «База данных» и выберем нужную базу.

На следующем экране нужно указать привилегии. Мы хотим дать полный доступ к базе, поэтому выберем пункт «Отметить все».

Теперь проверим полномочия на примере одного пользователя. Для этого залогинимся под пользователем user_cli и попробуем получить доступ к обеим базам данных.
Подключаемся к серверу:
mysql -u user_cli -h 82.202.199.34 -p
Попробуем выбрать БД, к которой нет доступа:
use my_db_gui;
ERROR 1044 (42000): Access denied for user 'user_cli'@'%' to database 'my_db_gui'
Теперь выберем базу, к которой есть доступ и попробуем создать в ней таблицу:
use my_db_cli; create table t(id int);
Ошибок не возникло, значит полномочия настроены правильно.
Удаление базы данных
Теперь покажем, как удалить созданные БД. Учтите, что при удалении базы также удаляются все таблицы с данными в ней, поэтому будьте аккуратны и перепроверяйте названия баз, которые собираетесь удалить.
Через консоль
drop database my_db_cli;
Через phpMyAdmin
Выбираем нужную БД, переходим на вкладку «Операции» и нажимаем «Удалить базу данных».

Заключение
Вы узнали, как с помощью командной строки или phpMyAdmin можно выполнить создание новой БД в MySQL, как создавать пользователей и добавлять им права доступа.
Как установить и настроить MySQL в Ubuntu 20.04
Основы работы с базами SQL

В программировании и IT часто приходится работать с базами данных. Это специальные электронные массивы (таблицы) с информацией упорядоченного характера.
В данной статье речь зайдет о том, как создать базу данных SQL. Дополнительно будут затронуты основы работы с БД.
Предварительная подготовка и общий план
Лучше всего создавать рассматриваемые элементы при помощи Microsoft SQL Server. Для этого необходимо провести небольшую предварительную подготовку:
- Установить СУБД Microsoft SQL Server. Новичкам подойдет версия Express.
- Удостовериться в наличии на компьютере SQL Server Management Studio (SSMS). Он является основным инструментом, который помогает разрабатывать баз данных MS SQL Server. Среда полностью бесплатная.
- Сформировать (спроектировать) изначальную базу данных. Перед тем, как проводить создание проекта в электронном виде, его нужно тщательно продумать. В процессе планирования рекомендуется определиться с сущностями, хранимыми в «таблице». Сюда же относят характеристики, свойства, ограничения, а также иные правила отображения и классификации. Все это поможет сделать БД максимально удобной и эффективной.
- Создать пустую БД. В SSMS процедура реализовывается несколькими методами: через графический интерфейс, а также посредством языка T-SQL.
- Создать таблицы. Обычно на данном этапе уже есть готова БД, но без внесенных в нее сведений. Этот шаг характеризуется не только формированием таблиц, но и заданием тех или иных ограничений.
- Наполнить «массив» информацией.
- Создать иные databases объекты. Сюда включены функции, триггеры, процедуры.
Это – общий алгоритм. Перед тем, как приступать к активным действиям, нужно тщательно изучить Microsoft SQL Server, а также язык T-SQL или MySQL. В противном случае при реализации поставленной задачи не исключены серьезные проблемы.
Создание пустой базы
Создание базы данных – не самый сложный процесс, если действовать последовательно. Заострим внимание на формирование пустой БД. Данный вариант предусматривает два способа реализации – через специализированный язык, а также при помощи встроенного графического интерфейса.
Графический интерфейс
Для того, чтобы воспользоваться соответствующим алгоритмом, необходимо:
- Запустить Server Management Studio.
- Подключиться к серверу.
- Открыть обозреватель объектов и кликнуть по блоку «Базы данных» правой кнопкой мыши. В появившемся меню выбрать команду «create database».
- Изучить появившееся меню. Обязательным для заполнения является только поле «Имя базы данных». Оставшиеся параметры можно заполнить по мере необходимости.
- Нажать на кнопку «Ок».
Среда вследствие выполнения описанного алгоритма создает базу данных без внесенных в нее сведений. Если объект с указанным в свойствах ранее именем отсутствует, он будет сформирован и отображен в обозревателе.
Через T-SQL
Второй вариант, помогающий сделать новую базу данных – это использование T-SQL. Он еще более простой, чем действия при помощи графического интерфейса. Достаточно указать специальную команду на языке запросов:
- Открыть редактор SQL-запросов. Для этого нужно кликнуть на панели инструментов по кнопке «Создать запрос».
- Ввести инструкцию: create database nameDB. NameDB – это имя БД.
- Нажать на кнопку «Выполнить».
Произойдет creating database. Это элементарный вариант. Таким способом можно сделать БД, которая будет обладать теми же характеристиками и параметрами, что и при использовании графического интерфейса.
Выше – наглядный пример того, как создается TestDB в каталоге DataBases на разделе жесткого диска с именем D.
В MySQL
В MySQL делать БД тоже достаточно легко. Для этого используется оператор create database. После него нужно указать имя создаваемого объекта при помощи create schema.
Выше – пример created database MySampleDB. Для того, чтобы исключить конфликты имен, можно использовать опцию if not exists. Эта «команда» создаст БД только тогда, когда ее название является уникальным.
Удаление
Иногда возникает потребность в удалении БД. В реальной жизни подобные ситуации возникают редко, но знать о дальнейших действиях при подобных обстоятельствах нужно.
Удаление может производиться так, как и creates – через графический интерфейс, а также при помощи специальных команд и операторов. В первом случае потребуется:
- Открыть «Обозреватель объектов».
- Найти интересующий элемент и кликнуть правой кнопкой мыши по нему.
- Выбрать команду «Удалить». Откроется меню удаления.
- Выбрать объекты (если их несколько), а затем подтвердить операцию. На данном этапе рекомендуется поставить отметку около пункта «Закрыть существующие соединения». Это поможет избавиться от существующих подключений.
Удалить базу данных можно только тогда, когда с ней никто не работает. Это касается не только сторонних пользователей, но и самой SSMS.
Если нужно избавиться от БД при помощи T-SQL, подойдет команда:
Здесь можно увидеть больше информации о том, как грамотно работать с созданием БД в Microsoft Server.
Основы T-SQL
Для создания базы данных используется команда CREATE DATABASE .
Чтобы создать новую базу данных откроем SQL Server Management Studio. Нажмем на назначение сервера в окне Object Explorer и в появившемся меню выберем пункт New Query .

В центральное поле для ввода выражений sql введем следующий код:
CREATE DATABASE usersdb
Тем самым мы создаем базу данных, которая будет называться «usersdb»:

Для выполнения команды нажмем на панели инструментов на кнопку Execute или на клавишу F5. И на сервере появится новая база данных.
После создания базы даных, мы можем установить ее в качестве текущей с помощью команды USE :
USE usersdb;
Прикрепление базы данных
Возможна ситуация, что у нас уже есть файл базы данных, который, к примеру, создан на другом компьютере. Файл базы данных представляет файл с расширением mdf, и этот файл в принципе мы можем переносить. Однако даже если мы скопируем его компьютер с установленным MS SQL Server, просто так скопированная база данных на сервере не появится. Для этого необходимо выполнить прикрепление базы данных к серверу. В этом случае применяется выражение:
CREATE DATABASE название_базы_данных ON PRIMARY(FILENAME='путь_к_файлу_mdf_на_локальном_компьютере') FOR ATTACH;
В качестве каталога для базы данных лучше использовать каталог, где хранятся остальные базы данных сервера. На Windows 10 по умолчанию это каталог C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA . Например, пусть в моем случае файл с данными называется userstoredb.mdf. И я хочу этот файл добавить на сервер как базу данных. Вначале его надо скопировать в выше указанный каталог. Затем для прикрепления базы к серверу надо использовать следующую команду:
CREATE DATABASE contactsdb ON PRIMARY(FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\userstoredb.mdf') FOR ATTACH;
После выполнения команды на сервере появится база данных contactsdb.
Удаление базы данных
Для удаления базы данных применяется команда DROP DATABASE , которая имеет следующий синтаксис:
DROP DATABASE database_name1 [, database_name2].
После команды через запятую мы можем перечислить все удаляемые базы данных. Например, удаление базы данных contactsdb:
DROP DATABASE contactsdb
Стоит учитывать, что даже если удаляемая база данных была прикреплена, то все равно будут удалены все файлы базы данных.