Sql запрос на создание базы данных: Создание базы данных SQL и работа с таблицами БД

SQL Создаем базу данных — SQL

Познакомившись с теорией базовых SQL запросов, мы можем теперь посвятить себя рассмотрению процесса создания баз данных и таблиц. Если вначале знакомства с SQL вы создали базу данных и таблицы с помощью скрипта, который я заранее подготовил, то за ближайшие пару глав мы познакомимся со всем необходимым, чтобы в вы могли сделать то же самое.

Далее я буду создавать базу данных футбольной лиги какой-то вымышленной страны. Девушки простите, но вы можете выбрать любой другой командный спорт – волейбол, баскетбол, главное, что у нас будут команды с игроками, они будут играть между собой и набирать очки.

Начнем с базы данных. Самый простой способ создать базу данных это выполнить команду:

CREATE DATABASE имя;

Назовем нашу базу League, что означает Лига, так что нам нужно выполнить команду

CREATE DATABASE League;

Все значения для базы данных будут выбраны по умолчанию. В зависимости от базы данных настройки могут быть разные и по MS SQL я достаточно подробно рассказал здесь Transact-SQL

Все, что касается конкретных баз данных я стараюсь опускать в этой работе, потому что не хочу привязываться к конкретной реализации, моя цель рассказать базовый язык SQL. Но тут я не могу удержаться и сказать очень важную вещь – кодировка (charset) и сравнения (COLLATION).

Что такое charset? Это кодировка, которая определяет, как будут храниться строки. Можно выбрать какую-то определенную кодировку, которая будет хранить только латинские буквы, если вам никогда не понадобиться хранить какие-либо другие символы и тогда можно в качестве кодировки выбрать латинский алфавит latin1. Но латинские буквы – это только буквы, а в алфавите они могут находиться немного в разных позициях и нам нужно сказать конкретнее – какой алфавит используется для сравнения строк. Сравнение строк влияет на поиск и сортировку.

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

SELECT schema_name, default_character_set_name, default_collation_name
FROM information_schema.schemata 
WHERE schema_name = 'league';

Здесь мы просим сервер показать нам три колонки schema_name, default_character_set_name и default_collation_name из таблицы schemata базы данных information_schema, где имя схемы (schema_name) равна League:

+-------------+----------------------------+------------------------+
| schema_name | default_character_set_name | default_collation_name |
+-------------+----------------------------+------------------------+
| league      | latin1                     | latin1_swedish_ci      |
+-------------+----------------------------+------------------------+

Тут у нас есть серьезная проблема. Раз вы читаете это, то скорей всего знаете русский язык и если вы будете писать приложение, которое хранит данные на русском, то такая база будет неудобно. По умолчанию она использует латинскую кодировку latin1, а в ней нет русских букв. При сравнении используется шведский алфавит и буквы ci говорят о том, что база данных будет игнорировать регистр.

Любые объекты, созданные в такой базе, будут по умолчанию использовать именно такую кодировку. Вы можете потом для каждой таблицы указать другую кодировку или даже для определенной колонки, но все же обычно вся база работает в одной и той же кодировке и по умолчанию мы должны выбрать что-то, что подойдет нам.

Кодировку можно создать сразу при создании базы. Для MySQL это выглядит так:

CREATE DATABASE League
CHARACTER SET latin1 COLLATE latin1_general_cs;

Здесь я снова выбрал латинскую раскладку, но в данном случае уже сказал, что при сравнении строк НУЖНО учитывать регистр.

CREATE DATABASE League 
CHARSET=utf8 COLLATE=utf8_general_ci

В данном случае я выбрал уже utf8 – современная Unicode кодировка, которая позволяет хранить русские буквы. Для сортировки здесь выбрана базовая (general) версия не привязанная к регистру (ci).

У нас база данных уже создана и если выполнить эту команду, то она завершится ошибкой. Проблему можно решить двумя способами – удалить базу данных и создать заново. Чтобы удалить выполняем команду:

DROP DATABASE League;

И теперь мы можем создать базу данных заново. А что, если в этой базе данных уже есть таблицы? Удаление приведет к тому, что база данных потеряет данные. Настройки уже существующей базы данных можно обновить, если выполнить команду

ALTER DATABASE базадынных НОВЫЕ ЗНАЧЕНИЯ

Alter можно воспринимать как – подправить, то есть мы говорим – подправить базу данных. В качестве новых значений можно указать то же самое, что мы можем указать и при создании. Так что команда будет выглядеть так:

ALTER DATABASE League CHARSET=utf8 COLLATE=utf8_general_ci;

Проверяем результат:

SELECT schema_name, default_character_set_name, default_collation_name
FROM information_schema. schemata 
WHERE schema_name = 'league';
+-------------+----------------------------+------------------------+
| schema_name | default_character_set_name | default_collation_name |
+-------------+----------------------------+------------------------+
| league      | utf8                       | utf8_general_ci        |
+-------------+----------------------------+------------------------+

Отлично, теперь база данных поддерживает utf8 и мы сможем работать с русскими буквами.

Изменение кодировки базы данных повлияет на все новые создаваемые объекты. Если есть существующие таблицы, которые уже используют latin1 кодировку, то они останутся такими. Таблицы придется подправить вручную.

При создании можно сделать еще более тонкие настройки, но это уж точно я оставлю пока, потому что администрирование конкретно MySQL – это отдельная тема. Мы рассматриваем максимально классический SQL язык.

Если база данных уже существует, то мы можем поменять ее настройки с помощью команды alter database – подправить базу данных. Давайте изменим набор символов и collation для testdb базы данных:

ALTER DATABASE testdb
CHARACTER SET utf8 COLLATE utf8_general_ci;

Команда выглядит практически также, как и создание базы данных, только вместо слова CREATE мы используем ALTER.

Что произошло, можем ли мы теперь добавлять в таблице телефонов из базы данных testdb русские слова? Нет, потому что изменение таким образом настроек базы данных не меняет существующие таблицы. Существующие таблицы останутся с теми настройками, которые они получили при создании, а вот если вы будете создавать новую, то она уже будет иметь utf8 кодировку.

Предыдущая глава

Группировка

Следующая глава

Создание таблиц с помощью SQL

Назад к содержимому «SQL — проще некуда»

Запрос SQL на создание и удаление базы данных

Основы Unreal Engine 5

Пройдя курс:

— Вы получите необходимую базу по Unreal Engine 5

— Вы познакомитесь с множеством инструментов в движке

— Вы научитесь создавать несложные игры

Общая продолжительность курса 4 часа, плюс множество упражнений и поддержка!

Чтобы получить Видеокурс,
заполните форму





E-mail:

Имя:


Другие курсы

Как создать профессиональный Интернет-магазин

После семинара:

— Вы будете знать, как создать Интернет-магазин.

— Вы получите бесплатный подарок с подробным описанием каждого шага.

— Вы сможете уже приступить к созданию Интернет-магазина.


Записаться


Другие курсы

Хотя в мире нет предмета, который был бы слабее и нежнее воды, но она может разрушить самый твердый предмет.

Лао-Цзы

В этой статье мы с Вами разберём SQL-запросы на создание, изменение и удаление базы данных. Не могу сказать, что это используется часто, но материал очень простой, и иногда он может потребоваться, поэтому советую всё-таки данную статью хотя бы просто прочитать.

Начнём с SQL-запроса на создание базы данных:


CREATE DATABASE db_name

Как видите, запрос на создание базы данных имеет очень простой синтаксис. Вначале идёт «CREATE DATABASE«, а затем имя новой базы данных.

И теперь разберём запрос SQL на удаление базы данных:


DROP DATABASE db_name

Как видите, синтаксис не сложнее, чем на создание базы данных. Вначале идёт команда «DROP DATABASE«, затем имя базы данных, которую мы хотим удалить.

Это были SQL-запросы на создание и удаление базы данных. В следующею статье мы поговорим о SQL-запросах для работы с таблицами.

  • Создано 16.01.2011 02:14:58

  • Михаил Русаков

Предыдущая статьяСледующая статья

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    <a href=»https://myrusakov.ru» target=»_blank»><img src=»https://myrusakov.ru/images/button.gif» alt=»Как создать свой сайт» /></a>

    Она выглядит вот так:

  2. Текстовая ссылка:
    <a href=»https://myrusakov.ru» target=»_blank»>Как создать свой сайт</a>

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

    [URL=»https://myrusakov.ru»]Как создать свой сайт[/URL]

Как создать новую базу данных в MySQL (учебник с примерами)

В статье представлен подробный обзор того, как создать базу данных в MySQL с использованием различных методов и инструментов (включая командную строку, Workbench и dbForge Studio для MySQL).

MySQL — это система управления реляционными базами данных, основанная на SQL. Он разрабатывается, распространяется и поддерживается корпорацией Oracle. MySQL — это бесплатное программное обеспечение с открытым исходным кодом, которое набирает все большую популярность благодаря своей надежности, совместимости, экономичности и всесторонней поддержке.

У MySQL есть ответвление — MariaDB, созданное первоначальными разработчиками MySQL. MariaDB имеет ту же структуру базы данных и индексы, что позволяет заменить MySQL.

MySQL и MariaDB поддерживают ряд популярных операционных систем, включая, помимо прочего, следующие: Linux, Ubuntu, Debian, Microsoft Windows и macOS.

Прежде чем приступить к созданию новой базы данных MySQL, необходимо загрузить сервер MySQL.

В этой статье мы изучим различные способы создания базы данных MySQL.

Содержание

1. CREATE DATABASE: Пример синтаксиса MySQL
2. Создание базы данных из клиента командной строки
3. Создание базы данных с помощью MySQL Workbench
4. Создание базы данных с помощью dbForge Studio для MySQL

CREATE БАЗА ДАННЫХ: пример синтаксиса MySQL

Самый первый способ создания базы данных в MySQL, о котором следует упомянуть, — это использование оператора CREATE DATABASE. Этот оператор создает базу данных с указанным именем. Помните, что для его использования вам понадобится  CREATE  привилегия для базы данных.

 СОЗДАТЬ БАЗУ ДАННЫХ mydatabase; 

Примечание:
Вы получите сообщение об ошибке, если запустите оператор CREATE DATABASE без указания IF NOT EXISTS, а база данных уже существует. Поэтому лучше использовать предложение IF NOT EXISTS для предотвращения ошибок.

 СОЗДАТЬ БАЗУ ДАННЫХ, ЕСЛИ НЕ СУЩЕСТВУЕТ mydatabase; 

После того, как вы выполните оператор CREATE DATABASE, MySQL вернет сообщение, уведомляющее об успешном создании базы данных.

Создание базы данных из клиента командной строки

Клиент командной строки MySQL обычно поставляется с пакетом установки сервера MySQL. Он устанавливается в двух версиях — с поддержкой UTF-8 и без нее. Вы можете запустить консольный клиент прямо из меню «Пуск».

Чтобы создать новую базу данных MySQL с помощью клиента командной строки MySQL:
1. Запустите клиент.
2. Введите свой пароль.
3. Выполните команду create database .

Вы можете узнать больше о работе с клиентом командной строки MySQL в нашей статье Как подключиться к серверу MySQL.

Как создать базу данных в MySQL Workbench

MySQL Workbench — популярный визуальный инструмент для проектирования, разработки и администрирования баз данных MySQL.

Как использовать MySQL Workbench для создания базы данных:

1. Запустите MySQL Workbench и нажмите кнопку + , чтобы открыть Мастер установки нового соединения .

2. Введите имя подключения и имя пользователя, затем нажмите Test Connection . Введите пароль в диалоговое окно с запросом пароля.
Вводим localhost и root .

3. Выберите нужное соединение в разделе MySQL Connections стартовой страницы Workbench.

4. В открывшемся окне MySQL Workbench нажмите кнопку Создать новую схему на подключенном сервере  на главной панели инструментов. Затем введите имя схемы, при необходимости измените набор символов и параметры сортировки и нажмите Apply .

5. В открывшемся окне Применить сценарий SQL к базе данных нажмите Применить . Затем нажмите Готово .

6. Убедитесь, что база данных появилась в Навигаторе.

Workbench на сегодняшний день является одним из самых популярных профессиональных инструментов для разработки баз данных MySQL. Однако dbForge Studio для MySQL — достойный конкурент, который может похвастаться превосходной функциональностью во многих аспектах. Давайте посмотрим, как создать новую базу данных MySQL с помощью dbForge Studio для MySQL.

Как создать базу данных с помощью dbForge Studio для MySQL

dbForge Studio для MySQL предлагает довольно простой и интуитивно понятный способ создания новой базы данных в MySQL. Вам не нужно быть профессиональным разработчиком или администратором баз данных, чтобы начать работу с dbForge Studio для MySQL.

1. Сначала необходимо создать необходимое подключение. Нажмите Кнопка New Connection на панели инструментов Database Explorer. Либо перейдите в меню База данных на главной панели инструментов и щелкните Новое соединение .

2. В открывшемся окне «Свойства подключения к базе данных» укажите все необходимые учетные данные для подключения.

3. Новое подключение появится в проводнике баз данных. Щелкните правой кнопкой мыши имя подключения и выберите New Database . Либо перейдите в меню База данных на главной панели инструментов и нажмите Новая база данных .

4. В открывшейся вкладке Новая база данных введите имя новой базы данных, выберите кодировку и сопоставление. Вы можете проверить скрипт для базы данных в нижней части окна. Нажмите Применить изменения после того, как вы настроите все как требуется.

5. Убедитесь, что ваша вновь созданная база данных появилась на вашем сервере MySQL. Для этого щелкните правой кнопкой мыши имя подключения в Database Explorer и выберите Refresh .

После создания базы данных

Если на вашем сервере MySQL имеется несколько баз данных, то для начала работы с созданной вами базой данных используйте следующий оператор:

 USE имя_базы_данных; 

Чтобы создать новую таблицу в базе данных, используйте следующий синтаксис:

 СОЗДАТЬ ТАБЛИЦУ [ЕСЛИ НЕ СУЩЕСТВУЕТ] имя_таблицы(
   столбец_1_определение,
   столбец_2_определение,
   …,
   table_constraints
) ENGINE=механизм_хранилища; 

На следующем рисунке показано, как можно создать таблицу MySQL в dbForge Studio для MySQL. В Studio есть функция автоматического завершения кода, поэтому вам не придется вводить весь код.

Чтобы узнать больше о создании таблиц в MySQL, обратитесь к нашей статье Как создавать таблицы с помощью инструкции CREATE TABLE в MySQL и с помощью инструмента с графическим интерфейсом для MySQL.

Чтобы удалить таблицу, используйте следующую инструкцию:

 DROP DATABASE имя_базы данных; 

dbForge Studio для MySQL позволяет визуально удалить базу данных без написания кода. Просто щелкните правой кнопкой мыши нужную базу данных в проводнике баз данных, затем выберите Удалить .

Заключение

В статье мы рассмотрели способы создания базы данных MySQL и доказали, что dbForge Studio для MySQL — лучшая альтернатива MySQL Workbench.

Как видите, dbForge Studio для MySQL позволяет быстро и легко создать новую базу данных в удобном и современном интерфейсе. А служба поддержки dbForge всегда готова помочь вам в случае возникновения каких-либо трудностей. Кроме того, мы предоставляем полнофункциональную 30-дневную бесплатную пробную версию наших продуктов. Загрузите dbForge Studio для MySQL и протестируйте все его функции на полную мощность. Также вы можете посмотреть этот видео-урок:

СОЗДАТЬ БАЗУ ДАННЫХ — База знаний MariaDB

Синтаксис

 СОЗДАТЬ [ИЛИ ЗАМЕНИТЬ] {БАЗА ДАННЫХ | SCHEMA} [ЕСЛИ НЕ СУЩЕСТВУЕТ] db_name
    [создать_спецификация] ...
спецификация_создания:
    [ПО УМОЛЧАНИЮ] НАБОР СИМВОЛОВ [=] charset_name
  | [ПО УМОЛЧАНИЮ] COLLATE [=] collation_name
  | КОММЕНТАРИЙ [=] 'комментарий'
 

Содержание

  1. Синтаксис
  2. Описание
    1. ИЛИ ЗАМЕНИТЕ
    2. ЕСЛИ НЕ СУЩЕСТВУЕТ
    3. КОММЕНТАРИЙ
  3. Примеры
  4. См. также

Описание

CREATE DATABASE создает базу данных с заданным именем. Чтобы использовать этот оператор, вам нужна привилегия CREATE для базы данных. СОЗДАТЬ СХЕМУ является синонимом СОЗДАТЬ БАЗУ ДАННЫХ .

Допустимые идентификаторы для использования в качестве имен баз данных см. в разделе Имена идентификаторов.

ИЛИ ЗАМЕНИТЕ
MariaDB, начиная с 10.1.3

Предложение OR REPLACE было добавлено в MariaDB 10.1.3

Если используется необязательное предложение OR REPLACE , оно действует как ярлык для:

 DROP DATABASE IF EXISTS db_name;
СОЗДАТЬ БАЗУ ДАННЫХ db_name ...;
 
IF NOT EXISTS

Когда используется предложение IF NOT EXISTS , MariaDB вернет предупреждение вместо ошибки, если указанная база данных уже существует.

MariaDB, начиная с 10.5.0

Начиная с MariaDB 10.5.0, можно добавить комментарий размером не более 1024 байт. Если длина комментария превышает эту длину, выдается код ошибки/предупреждения 4144. Комментарий базы данных также добавляется в файл db.opt, а также в таблицу information_schema.schemata.

Примеры

 CREATE DATABASE db1;
Запрос выполнен успешно, затронута 1 строка (0,18 сек.)
СОЗДАТЬ БАЗУ ДАННЫХ db1;
ОШИБКА 1007 (HY000): не удается создать базу данных «db1»; база данных существует
СОЗДАТЬ ИЛИ ЗАМЕНИТЬ БАЗУ ДАННЫХ db1;
Запрос выполнен успешно, затронуты 2 строки (0,00 сек.)
СОЗДАТЬ БАЗУ ДАННЫХ, ЕСЛИ НЕ СУЩЕСТВУЕТ db1;
Запрос выполнен успешно, затронута 1 строка, 1 предупреждение (0,01 сек.)
ПОКАЗАТЬ ПРЕДУПРЕЖДЕНИЯ;
+-------+-------+---------------------------------- ------------+
| Уровень | код | Сообщение |
+-------+-------+---------------------------------- ------------+
| Примечание | 1007 | Не удается создать базу данных «db1»; база данных существует |
+-------+-------+---------------------------------- ------------+
 

Установка наборов символов и сортировки.