dbt/include/maxcompute/macros/materializations/seeds/seeds.sql (28 lines of code) (raw):

{% macro maxcompute__create_csv_table(model, agate_table) %} {%- set column_override = model['config'].get('column_types', {}) -%} {%- set quote_seed_column = model['config'].get('quote_columns', None) -%} {%- set is_transactional = model['config'].get('transactional', False) -%} {% set sql %} create table {{ this.render() }} ( {%- for col_name in agate_table.column_names -%} {%- set inferred_type = adapter.convert_type(agate_table, loop.index0) -%} {%- set type = column_override.get(col_name, inferred_type) -%} {%- set column_name = (col_name | string) -%} {{ adapter.quote_seed_column(column_name, quote_seed_column) }} {{ type }} {%- if not loop.last -%}, {%- endif -%} {%- endfor -%} ) {%- if is_transactional -%} tblproperties("transactional"="true") {%- endif -%} {% endset %} {% call statement('_') -%} {{ sql }} {%- endcall %} {{ return(sql) }} {% endmacro %} {% macro maxcompute__load_csv_rows(model, agate_table) %} {%- set column_override = model['config'].get('column_types', {}) -%} {{ adapter.load_dataframe(model['database'], model['schema'], model['alias'], agate_table, column_override, model['config']['delimiter']) }} {% do persist_docs(target_relation, model) %} {% endmacro %}