dbt-sqlserver 1.11.2rc2__tar.gz → 1.11.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dbt_sqlserver-1.11.2rc2/dbt_sqlserver.egg-info → dbt_sqlserver-1.11.3}/PKG-INFO +1 -1
- dbt_sqlserver-1.11.3/dbt/adapters/sqlserver/__version__.py +1 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_adapter.py +35 -3
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/columns.sql +15 -1
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/snapshots/helpers.sql +1 -1
- dbt_sqlserver-1.11.3/dbt/include/sqlserver/macros/materializations/snapshots/strategies.sql +65 -0
- dbt_sqlserver-1.11.3/dbt/include/sqlserver/macros/utils/array_append.sql +3 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3/dbt_sqlserver.egg-info}/PKG-INFO +1 -1
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt_sqlserver.egg-info/SOURCES.txt +1 -0
- dbt_sqlserver-1.11.2rc2/dbt/adapters/sqlserver/__version__.py +0 -1
- dbt_sqlserver-1.11.2rc2/dbt/include/sqlserver/macros/materializations/snapshots/strategies.sql +0 -5
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/LICENSE +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/README.md +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/__init__.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/__init__.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/py.typed +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/__init__.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/index.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/policies.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_auth.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_backend.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_column.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_configs.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_connections.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_constants.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_credentials.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_helpers.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_mask.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_relation.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_runtime.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/__init__.py +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/dbt_project.yml +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/apply_grants.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/apply_masks.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/catalog.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/indexes.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/metadata.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/persist_docs.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/relation.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/schema.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/show.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/validate_sql.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/functions/helpers.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/functions/scalar.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/hooks.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/incremental/incremental.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/incremental/incremental_strategies.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/incremental/merge.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/table/columns_spec_ddl.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/table/table.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/table/table_dml_refresh.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/unit_test/get_fixture_sql.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/unit_test/unit_test_create_table_as.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/view/create_view_as.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/models/view/view.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/snapshots/snapshot.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/snapshots/snapshot_merge.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/tests.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/materializations/unit_tests.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/relations/seeds/helpers.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/relations/table/clone.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/relations/table/create.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/relations/views/create.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/any_value.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/array_construct.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/cast_bool_to_text.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/concat.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/date_trunc.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/dateadd.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/get_tables_by_pattern.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/hash.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/last_day.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/length.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/listagg.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/position.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/safe_cast.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/split_part.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/timestamps.sql +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/profile_template.yml +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt_sqlserver.egg-info/dependency_links.txt +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt_sqlserver.egg-info/requires.txt +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt_sqlserver.egg-info/top_level.txt +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/pyproject.toml +0 -0
- {dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/setup.cfg +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
version = "1.11.3"
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_adapter.py
RENAMED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import re
|
|
2
|
-
from
|
|
2
|
+
from contextlib import contextmanager
|
|
3
|
+
from typing import Any, Dict, Iterator, List, Optional
|
|
3
4
|
|
|
4
5
|
import agate
|
|
5
6
|
import dbt_common.exceptions
|
|
@@ -375,8 +376,15 @@ class SQLServerAdapter(SQLAdapter):
|
|
|
375
376
|
|
|
376
377
|
@classmethod
|
|
377
378
|
def convert_number_type(cls, agate_table, col_idx):
|
|
378
|
-
|
|
379
|
-
|
|
379
|
+
if agate_table.aggregate(agate.MaxPrecision(col_idx)):
|
|
380
|
+
return "float"
|
|
381
|
+
values = agate_table.columns[col_idx].values_without_nulls()
|
|
382
|
+
low, high = (min(values), max(values)) if values else (0, 0)
|
|
383
|
+
if -(2**31) <= low and high < 2**31:
|
|
384
|
+
return "int"
|
|
385
|
+
if -(2**63) <= low and high < 2**63:
|
|
386
|
+
return "bigint"
|
|
387
|
+
return "numeric(38,0)"
|
|
380
388
|
|
|
381
389
|
def create_schema(self, relation: BaseRelation) -> None:
|
|
382
390
|
relation = relation.without_identifier()
|
|
@@ -399,6 +407,8 @@ class SQLServerAdapter(SQLAdapter):
|
|
|
399
407
|
# see https://github.com/fishtown-analytics/dbt/pull/2255
|
|
400
408
|
lens = [len(d.encode("utf-8")) for d in column.values_without_nulls()]
|
|
401
409
|
max_len = max(lens) if lens else 64
|
|
410
|
+
if max_len > 8000:
|
|
411
|
+
return "varchar(max)"
|
|
402
412
|
length = max_len if max_len > 16 else 16
|
|
403
413
|
return "varchar({})".format(length)
|
|
404
414
|
|
|
@@ -822,6 +832,28 @@ class SQLServerAdapter(SQLAdapter):
|
|
|
822
832
|
return False
|
|
823
833
|
return create_needs_own_batch(parsed.build_options)
|
|
824
834
|
|
|
835
|
+
# dbt-core's run-operation runs on connections with these names.
|
|
836
|
+
_RUN_OPERATION_CONNECTION_PREFIXES = ("macro_", "inline_query")
|
|
837
|
+
|
|
838
|
+
@contextmanager
|
|
839
|
+
def connection_named(
|
|
840
|
+
self, name: str, query_header_context: Any = None, should_release_connection: bool = True
|
|
841
|
+
) -> Iterator[None]:
|
|
842
|
+
"""Commit a run-operation's open transaction when it finishes cleanly.
|
|
843
|
+
|
|
844
|
+
Stopgap for dbt-labs/dbt#16434, remove once dbt-core commits after a
|
|
845
|
+
run-operation: dbt-core never does, so with dbt-managed transactions
|
|
846
|
+
on, a write through ``statement()`` (auto_begin) is rolled back when
|
|
847
|
+
the connection closes. The commit sits after the ``yield`` so it runs
|
|
848
|
+
only when the macro did not raise; a failed macro still rolls back.
|
|
849
|
+
Matching on the connection name is a heuristic, since dbt-core marks
|
|
850
|
+
run-operation connections no other way.
|
|
851
|
+
"""
|
|
852
|
+
with super().connection_named(name, query_header_context, should_release_connection):
|
|
853
|
+
yield
|
|
854
|
+
if name.startswith(self._RUN_OPERATION_CONNECTION_PREFIXES):
|
|
855
|
+
self.commit_if_open()
|
|
856
|
+
|
|
825
857
|
@available
|
|
826
858
|
def commit_if_open(self) -> None:
|
|
827
859
|
"""Commit the current transaction if one is open - a no-op otherwise.
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/columns.sql
RENAMED
|
@@ -40,10 +40,17 @@
|
|
|
40
40
|
|
|
41
41
|
{% set prefer_single = config.get('prefer_single_alter_column', false) %}
|
|
42
42
|
|
|
43
|
+
{#-- ALTER COLUMN without NOT NULL makes the column nullable --#}
|
|
44
|
+
{% set nullable_sql %}
|
|
45
|
+
{{ get_use_database_sql(relation.database) }}
|
|
46
|
+
select columnproperty(object_id('{{ escape_single_quotes(relation) }}'), '{{ escape_single_quotes(column_name) }}', 'AllowsNull')
|
|
47
|
+
{%- endset %}
|
|
48
|
+
{%- set not_null = run_query(nullable_sql).columns[0].values()[0] == 0 -%}
|
|
49
|
+
|
|
43
50
|
{% if prefer_single and relation.type == 'table' %}
|
|
44
51
|
{% set alter_sql %}
|
|
45
52
|
alter {{ relation.type }} {{ relation }}
|
|
46
|
-
alter column "{{ column_name }}" {{ new_column_type }};
|
|
53
|
+
alter column "{{ column_name }}" {{ new_column_type }}{{ ' not null' if not_null }};
|
|
47
54
|
{%- endset %}
|
|
48
55
|
{% do run_query(alter_sql) %}
|
|
49
56
|
|
|
@@ -64,11 +71,18 @@
|
|
|
64
71
|
{% set rename_column %}
|
|
65
72
|
exec sp_rename '{{ relation | replace('"', '') }}.{{ tmp_column }}', '{{ column_name }}', 'column'
|
|
66
73
|
{%- endset %}
|
|
74
|
+
{% set alter_sql_not_null %}
|
|
75
|
+
alter {{ relation.type }} {{ relation }}
|
|
76
|
+
alter column "{{ column_name }}" {{ new_column_type }} not null;
|
|
77
|
+
{%- endset %}
|
|
67
78
|
|
|
68
79
|
{% do run_query(add_column) %}
|
|
69
80
|
{% do run_query(update_column) %}
|
|
70
81
|
{% do run_query(drop_column) %}
|
|
71
82
|
{% do run_query(rename_column) %}
|
|
83
|
+
{% if not_null %}
|
|
84
|
+
{% do run_query(alter_sql_not_null) %}
|
|
85
|
+
{% endif %}
|
|
72
86
|
{% endif %}
|
|
73
87
|
|
|
74
88
|
{% endmacro %}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{% macro sqlserver__create_columns(relation, columns) %}
|
|
2
2
|
{% set column_list %}
|
|
3
3
|
{% for column_entry in columns %}
|
|
4
|
-
{{column_entry.name}} {{column_entry.data_type}}{{ ", " if not loop.last }}
|
|
4
|
+
{{ adapter.quote(column_entry.name) }} {{column_entry.data_type}}{{ ", " if not loop.last }}
|
|
5
5
|
{% endfor %}
|
|
6
6
|
{% endset %}
|
|
7
7
|
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{% macro sqlserver__snapshot_hash_arguments(args) %}
|
|
2
|
+
CONVERT(VARCHAR(32), HashBytes('MD5', {% for arg in args %}
|
|
3
|
+
coalesce(cast({{ arg }} as varchar(8000)), '') {% if not loop.last %} + '|' + {% endif %}
|
|
4
|
+
{% endfor %}), 2)
|
|
5
|
+
{% endmacro %}
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
{#
|
|
9
|
+
dbt-adapters does not dispatch "snapshot_check_all_get_existing_columns", so
|
|
10
|
+
this shadows the global project's macro; adapter package macros take
|
|
11
|
+
precedence. Keep in sync with dbt-adapters when upgrading. When upstream
|
|
12
|
+
dispatches it, delete the public wrapper and keep the sqlserver__ handler.
|
|
13
|
+
|
|
14
|
+
Change from upstream: for a check_cols list, upstream reads the columns'
|
|
15
|
+
casing from "select <check_cols> from (<sql>) subq", and T-SQL can't nest a
|
|
16
|
+
WITH in a subquery. This reads the query's columns unwrapped, as the 'all'
|
|
17
|
+
branch does, and picks check_cols from them case-insensitively.
|
|
18
|
+
#}
|
|
19
|
+
|
|
20
|
+
{% macro snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) -%}
|
|
21
|
+
{{ return(sqlserver__snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config)) }}
|
|
22
|
+
{%- endmacro %}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
{% macro sqlserver__snapshot_check_all_get_existing_columns(node, target_exists, check_cols_config) -%}
|
|
26
|
+
{%- if not target_exists -%}
|
|
27
|
+
{#-- no table yet -> return whatever the query does --#}
|
|
28
|
+
{{ return((false, query_columns)) }}
|
|
29
|
+
{%- endif -%}
|
|
30
|
+
|
|
31
|
+
{#-- handle any schema changes --#}
|
|
32
|
+
{%- set target_relation = adapter.get_relation(database=node.database, schema=node.schema, identifier=node.alias) -%}
|
|
33
|
+
|
|
34
|
+
{% if check_cols_config == 'all' %}
|
|
35
|
+
{%- set query_columns = get_columns_in_query(node['compiled_code']) -%}
|
|
36
|
+
|
|
37
|
+
{% elif check_cols_config is iterable and (check_cols_config | length) > 0 %}
|
|
38
|
+
{%- set all_columns = get_columns_in_query(node['compiled_code']) -%}
|
|
39
|
+
{%- set all_columns_lower = all_columns | map('lower') | list -%}
|
|
40
|
+
{%- set query_columns = [] -%}
|
|
41
|
+
{%- for check_col in check_cols_config -%}
|
|
42
|
+
{%- if (check_col | lower) not in all_columns_lower -%}
|
|
43
|
+
{% do exceptions.raise_compiler_error("check_cols column '" ~ check_col ~ "' is not in the snapshot query") %}
|
|
44
|
+
{%- endif -%}
|
|
45
|
+
{%- do query_columns.append(all_columns[all_columns_lower.index(check_col | lower)]) -%}
|
|
46
|
+
{%- endfor -%}
|
|
47
|
+
|
|
48
|
+
{% else %}
|
|
49
|
+
{% do exceptions.raise_compiler_error("Invalid value for 'check_cols': " ~ check_cols_config) %}
|
|
50
|
+
{% endif %}
|
|
51
|
+
|
|
52
|
+
{%- set existing_cols = adapter.get_columns_in_relation(target_relation) | map(attribute = 'name') | list -%}
|
|
53
|
+
{%- set ns = namespace() -%} {#-- handle for-loop scoping with a namespace --#}
|
|
54
|
+
{%- set ns.column_added = false -%}
|
|
55
|
+
|
|
56
|
+
{%- set intersection = [] -%}
|
|
57
|
+
{%- for col in query_columns -%}
|
|
58
|
+
{%- if col in existing_cols -%}
|
|
59
|
+
{%- do intersection.append(adapter.quote(col)) -%}
|
|
60
|
+
{%- else -%}
|
|
61
|
+
{% set ns.column_added = true %}
|
|
62
|
+
{%- endif -%}
|
|
63
|
+
{%- endfor -%}
|
|
64
|
+
{{ return((ns.column_added, intersection)) }}
|
|
65
|
+
{%- endmacro %}
|
|
@@ -58,6 +58,7 @@ dbt/include/sqlserver/macros/relations/table/clone.sql
|
|
|
58
58
|
dbt/include/sqlserver/macros/relations/table/create.sql
|
|
59
59
|
dbt/include/sqlserver/macros/relations/views/create.sql
|
|
60
60
|
dbt/include/sqlserver/macros/utils/any_value.sql
|
|
61
|
+
dbt/include/sqlserver/macros/utils/array_append.sql
|
|
61
62
|
dbt/include/sqlserver/macros/utils/array_construct.sql
|
|
62
63
|
dbt/include/sqlserver/macros/utils/cast_bool_to_text.sql
|
|
63
64
|
dbt/include/sqlserver/macros/utils/concat.sql
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
version = "1.11.2rc2"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/__init__.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/index.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/relation_configs/policies.py
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_backend.py
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_configs.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_connections.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_constants.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_credentials.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_helpers.py
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_relation.py
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/adapters/sqlserver/sqlserver_runtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/catalog.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/indexes.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/metadata.sql
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/relation.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/schema.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/adapters/show.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/any_value.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/concat.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/date_trunc.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/dateadd.sql
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/hash.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/last_day.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/length.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/listagg.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/position.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/safe_cast.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/split_part.sql
RENAMED
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt/include/sqlserver/macros/utils/timestamps.sql
RENAMED
|
File without changes
|
|
File without changes
|
{dbt_sqlserver-1.11.2rc2 → dbt_sqlserver-1.11.3}/dbt_sqlserver.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|