Перейти к основному содержимому

column_types

Описание

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

Если этого не сделать, dbt попытается автоматически определить типы данных на основе значений столбцов в seed-файле.

Использование

Укажите типы столбцов в файле dbt_project.yml:

dbt_project.yml
seeds:
jaffle_shop:
country_codes:
+column_types:
country_code: varchar(2)
country_name: varchar(32)

Или:

seeds/properties.yml

seeds:
- name: country_codes
config:
column_types:
country_code: varchar(2)
country_name: varchar(32)

Если вы ранее уже запускали dbt seed, необходимо выполнить dbt seed --full-refresh, чтобы изменения вступили в силу.

Обратите внимание: при настройке column_types необходимо использовать полный путь к seed-файлу относительно директории seeds. Например, для seed-файла seeds/marketing/utm_mappings.csv конфигурация будет выглядеть так:

dbt_project.yml
seeds:
jaffle_shop:
marketing:
utm_mappings:
+column_types:
...

Примеры

Использование типа varchar для сохранения ведущих нулей в почтовом индексе

dbt_project.yml
seeds:
jaffle_shop: # необходимо указать имя проекта
warehouse_locations:
+column_types:
zipcode: varchar(5)

Рекомендации

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

Устранение неполадок

Примечание: конфигурация column_types чувствительна к регистру, независимо от настроек кавычек. Если в seed-файле столбец указан как Country_Name, то и в конфигурации его необходимо указывать как Country_Name, а не country_name.

Нашли ошибку?

0
Loading