Учебники

База данных H2 — Создать

CREATE — это общая команда SQL, используемая для создания таблиц, схем, последовательностей, представлений и пользователей на сервере базы данных H2.

Создать таблицу

Создать таблицу — это команда, используемая для создания пользовательской таблицы в текущей базе данных.

Синтаксис

Ниже приведен общий синтаксис команды «Создать таблицу».

CREATE [ CACHED | MEMORY ] [ TEMP | [ GLOBAL | LOCAL ] TEMPORARY ] 
TABLE [ IF NOT EXISTS ] name 
[ ( { columnDefinition | constraint } [,...] ) ] 
[ ENGINE tableEngineName [ WITH tableEngineParamName [,...] ] ] 
[ NOT PERSISTENT ] [ TRANSACTIONAL ] 
[ AS select ] 

Используя общий синтаксис команды «Создать таблицу», мы можем создавать различные типы таблиц, такие как кэшированные таблицы, таблицы памяти и временные таблицы. Ниже приведен список для описания различных предложений из данного синтаксиса.

  • CACHED — кэшированные таблицы являются типом по умолчанию для обычных таблиц. Это означает, что количество строк не ограничено основной памятью.

  • MEMORY — Таблицы памяти являются типом по умолчанию для временных таблиц. Это означает, что таблицы памяти не должны становиться слишком большими, а индексные данные хранятся в основной памяти.

  • ВРЕМЕННЫЕ — временные таблицы удаляются при закрытии или открытии базы данных. В основном, временные таблицы бывают двух типов:

    • Тип GLOBAL — Доступен для всех соединений.

    • ЛОКАЛЬНЫЙ тип — доступен по текущему соединению.

    Тип по умолчанию для временных таблиц — глобальный тип. Индексы временных таблиц хранятся в основной памяти, если временная таблица не создана с использованием CREATE CACHED TABLE.

  • ENGINE — опция ENGINE требуется только при использовании пользовательских реализаций таблиц.

  • NOT PERSISTENT — это модификатор для хранения полных данных таблицы в памяти, и все строки теряются при закрытии базы данных.

  • TRANSACTIONAL — это ключевое слово, которое фиксирует открытую транзакцию, и эта команда поддерживает только временные таблицы.

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

MEMORY — Таблицы памяти являются типом по умолчанию для временных таблиц. Это означает, что таблицы памяти не должны становиться слишком большими, а индексные данные хранятся в основной памяти.

ВРЕМЕННЫЕ — временные таблицы удаляются при закрытии или открытии базы данных. В основном, временные таблицы бывают двух типов:

Тип GLOBAL — Доступен для всех соединений.

ЛОКАЛЬНЫЙ тип — доступен по текущему соединению.

Тип по умолчанию для временных таблиц — глобальный тип. Индексы временных таблиц хранятся в основной памяти, если временная таблица не создана с использованием CREATE CACHED TABLE.

ENGINE — опция ENGINE требуется только при использовании пользовательских реализаций таблиц.

NOT PERSISTENT — это модификатор для хранения полных данных таблицы в памяти, и все строки теряются при закрытии базы данных.

TRANSACTIONAL — это ключевое слово, которое фиксирует открытую транзакцию, и эта команда поддерживает только временные таблицы.

пример

В этом примере давайте создадим таблицу с именем tutorials_tbl, используя следующие данные.

Sr.No Название столбца Тип данных
1 Я БЫ Int
2 заглавие VARCHAR (50)
3 автор VARCHAR (20)
4 Дата подачи Дата

Следующий запрос используется для создания таблицы tutorials_tbl вместе с данными столбца.

CREATE TABLE tutorials_tbl ( 
   id INT NOT NULL, 
   title VARCHAR(50) NOT NULL, 
   author VARCHAR(20) NOT NULL, 
   submission_date DATE, 
);

Приведенный выше запрос приводит к следующему выводу.

(0) rows effected 

Создать схему

Создать схему — это команда, используемая для создания зависимой от пользователя схемы с определенной авторизацией (под текущим зарегистрированным пользователем).

Синтаксис

Ниже приведен общий синтаксис команды Создать схему.

CREATE SCHEMA [ IF NOT EXISTS ] name [ AUTHORIZATION ownerUserName ] 

В приведенном выше общем синтаксисе AUTHORIZATION — это ключевое слово, используемое для предоставления соответствующего имени пользователя. Эта команда является необязательной, что означает, что если мы не предоставляем имя пользователя, она будет учитывать текущего пользователя. Пользователь, который выполняет команду, должен иметь права администратора, а также владельца.

Эта команда фиксирует открытую транзакцию в этом соединении.

пример

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

CREATE SCHEMA test_schema AUTHORIZATION sa; 

Приведенная выше команда производит следующий вывод.

(0) rows effected 

Создать последовательность

Последовательность — это концепция, которая используется для генерации числа, следуя последовательности для идентификатора или любых случайных значений столбца.

Синтаксис

Ниже приведен общий синтаксис команды create sequence.

CREATE SEQUENCE [ IF NOT EXISTS ] newSequenceName [ START WITH long ] 
[ INCREMENT BY long ] 
[ MINVALUE long | NOMINVALUE | NO MINVALUE ] 
[ MAXVALUE long | NOMAXVALUE | NO MAXVALUE ] 
[ CYCLE long | NOCYCLE | NO CYCLE ] 
[ CACHE long | NOCACHE | NO CACHE ] 

Этот общий синтаксис используется для создания последовательности. Тип данных последовательности — BIGINT . В этой последовательности значения никогда не используются повторно, даже если транзакция откатывается назад.

пример

В этом примере давайте создадим последовательность с именем SEQ_ID , используя следующий запрос.

CREATE SEQUENCE SEQ_ID; 

Приведенный выше запрос приводит к следующему выводу.