Создание таблиц sql с условиями

После одного неудачного обновления 1C понадобилось создать пачку таблиц в базе sql при этом система должна найти таблицу в имени которой есть определенный суффикс и при этом другого суффикса быть не должно. Так же в имя таблицы добавляется суффикс, которого быть не должно. Копируется только структура таблиц

DECLARE @table_name NVARCHAR(MAX);
DECLARE @sql NVARCHAR(MAX);

DECLARE table_cursor CURSOR FOR
SELECT t1.name
FROM sys.tables t1
WHERE t1.name LIKE '%Document%'
AND t1.name NOT LIKE '%X1';

OPEN table_cursor;
FETCH NEXT FROM table_cursor INTO @table_name;

WHILE @@FETCH_STATUS = 0
BEGIN
SET @sql = 'SELECT * INTO ' + @table_name + 'X1 FROM ' + @table_name + ' WHERE 1=0;';
EXEC sp_executesql @sql;
FETCH NEXT FROM table_cursor INTO @table_name;
END;

CLOSE table_cursor;
DEALLOCATE table_cursor;

  • Курсор – Перебирает все таблицы из результата запроса.
  • sp_executesql – Выполняет сгенерированный SQL-запрос для каждой таблицы.
  • @table_name + ‘X1’ – Автоматически добавляет суффикс X1 к имени таблицы.

Итого
Все подходящие таблицы будут скопированы в новые с окончанием X1, но без данных.

Операция не может быть выполнена с текущим составом лицензий

Сегодня многие могут столкнуться с ошибкой:
Операция не может быть выполнена с текущим составом лицензий
«Свойства кластера ‘Допустимое отклонение количества ошибок сервера’, ‘Режим распределения нагрузки’ или свойства рабочего сервера ‘Максимальный объем памяти рабочих процессов’, ‘Безопасный расход памяти за один вызов’, ‘Объем памяти рабочих процессов, до которого сервер считается производительным’, ‘Количество ИБ на процесс’ содержат значения, отличные от значений по умолчанию.

Для исправления ошибки необходимо изменить свойства кластера и сервера. После сохранения все само перезапуститься и работа восстановится.
Ниже стандартные значения локального кластера и рабочего сервер.