Я настраиваю конвейер данных для экспорта из таблицы Kusto в таблицу SQL Server. Единственная проблема - в целевой таблице есть два столбца GENERATED ALWAYS
. Нужна помощь в реализации решения с использованием Kusto.
Это оператор экспорта:
.export async to sql ['CompletionImport']
h@"connection_string_here"
with (createifnotexists="true", primarykey="CompletionSearchId")
<|set notruncation;
apiV2CompletionSearchFinal
| where hash(SourceRecordId, 1) == 0
, который дает ошибку:
Cannot insert an explicit value into a GENERATED ALWAYS column in table 'server.dbo.CompletionImport'.
Use INSERT with a column list to exclude the GENERATED ALWAYS column, or insert a DEFAULT into GENERATED ALWAYS column.
Итак, я Немного не знаю, как реализовать это решение в Кусто. Мог бы я просто добавить трубу project
, исключая столбцы GENERATED ALWAYS
? Может быть, в идеале, как я могу вставить значение DEFAULT
в GENERATED ALWAYS
SQL столбцы сервера с помощью запроса Kusto?
Изменить: Попытка использовать materialize
для создания временной таблицы в кеше и экспорта этой кэшированной таблицы. Однако я не могу найти никакой документации по этому поводу, и операция не выполняется:
let dboV2CompletionSearch = apiV2CompletionSearchFinal
| project every, variable, besides, generated, always, ones;
let cachedCS = materialize(dboV2CompletionSearch);
.export async to sql ['CompletionImport']
h@"connect_string"
with (createifnotexists="true", primarykey="CompletionSearchId")
<|set notruncation;
cachedCS
| where hash(SourceRecordId, 1) == 0
со следующим сообщением об ошибке:
Semantic error: 'set notruncation;
cachedCS
| where hash(SourceRecordId, 1) == 0'
has the following semantic error: SEM0100:
'where' operator: Failed to resolve table or column expression named 'cachedCS'.