Добавить столбец, если он не существует, во все таблицы?

Я перешел бы в источник ( архив ). Страница STL SGI говорит, что разрешено иметь линейную сложность. Я полагаю, что руководство по проектированию, за которым они следовали, должно было позволить реализации списка быть максимально общей, и таким образом позволить больше гибкости в использовании списков.

29
задан pedram 25 May 2016 в 11:01
поделиться

1 ответ

enter image description here

DECLARE @Column VARCHAR(100) = 'Inserted_date'
DECLARE @sql VARCHAR(max) = NULL

SELECT @sql += ' ALTER TABLE ' + QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) + 'ADD' + @Column + 'datetime NOT NULL DEFAULT getdate()' + '; '
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
    AND TABLE_NAME IN (
        SELECT DISTINCT NAME
        FROM SYS.TABLES
        WHERE type = 'U'
            AND Object_id IN (
                SELECT DISTINCT Object_id
                FROM SYS.COLUMNS
                WHERE NAME != @Column
                )
        )
EXEC Sp_executesql @sql
0
ответ дан 28 November 2019 в 02:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: