Создание логической таблицы
Чтобы создать логическую таблицу в логической базе данных, выполните запрос CREATE TABLE. При необходимости добавьте в запрос ключевое слово:
- DATASOURCE_TYPE со списком СУБД хранилища — чтобы разместить данные таблицы только в некоторых СУБД хранилища;
- LOGICAL_ONLY — чтобы создать таблицу только на логическом уровне.
Создание таблицы недоступно при наличии любого из факторов:
- горячей дельты,
- незавершенного запроса на создание, удаление или изменение таблицы или представления,
- запрета на изменение сущностей (см. раздел DENY_CHANGES).
Наличие логической таблицы можно проверить, как описано в разделе Проверка наличия логической таблицы. Наличие физических таблиц, связанных с логической, можно проверить, как описано в разделе Проверка месторасположения логической сущности.
Каждое создание таблицы записывается в журнал. Журнал доступен с помощью запроса GET_CHANGES.
Примеры
Создание логической таблицы
-- выбор базы данных marketing по умолчанию
USE marketing;
-- создание таблицы sales
CREATE TABLE sales (
id INT NOT NULL,
transaction_date TIMESTAMP NOT NULL,
product_code VARCHAR(256) NOT NULL,
product_units INT NOT NULL,
store_id INT NOT NULL,
description VARCHAR(256),
PRIMARY KEY (id)
)
DISTRIBUTED BY (id);
Создание логической таблицы только на логическом уровне
CREATE TABLE marketing.sales1 (
id INT NOT NULL,
transaction_date TIMESTAMP NOT NULL,
product_code VARCHAR(256) NOT NULL,
product_units INT NOT NULL,
store_id INT NOT NULL,
description VARCHAR(256),
PRIMARY KEY (id)
)
DISTRIBUTED BY (id)
LOGICAL_ONLY
Создание логической таблицы с размещением данных в ADP и ADG
CREATE TABLE marketing.clients (
id INT NOT NULL,
first_name VARCHAR(256) NOT NULL,
last_name VARCHAR(256) NOT NULL,
patronymic_name VARCHAR(256),
birth_date DATE,
PRIMARY KEY (id)
) DISTRIBUTED BY (id)
DATASOURCE_TYPE (adp,adg)