Есть ли способ включить временные таблицы в проекте базы данных Visual Studio SQL Server 2016? Я не могу найти способ заставить это работать. Я предполагаю, что это может быть проблема совместимости, единственный способ, который я нашел, - включить таблицу в сценарии пост-развертывания, но затем при следующем развертывании сценарий генерирует капли для соответствующих столбцов.Проект базы данных Visual Studio SQL Server 2016 и временные таблицы
ответ
Временные таблицы поддерживаются. Последняя версия SSDT для Visual Studio 2015 уже содержит шаблон временной таблицы, который добавляет предложение WITH (SYSTEM_VERSIONING = ON(HISTORY_TABLE=[dbo].[MyTempTable_HISTORY], DATA_CONSISTENCY_CHECK=ON))
к сценарию создания таблицы и создает таблицу истории.
Изменение таблицы создает тот же скрипт, который генерируется при изменении любой другой таблицы, чтобы избежать потери данных. Скопируйте данные в новую временную таблицу, перестройте исходную таблицу и скопируйте данные обратно.
Единственное «странное» поведение является то, что истории таблицы воссоздана даже для переименования рефакторинга, которые генерируют sp_rename
команду, например:
GO
EXECUTE sp_rename @objname = N'[dbo].[MyTempTable].[Name]', @newname = N'Name1', @objtype = N'COLUMN';
GO
PRINT N'Starting rebuilding table [dbo].[MyTempTable_HISTORY]...';
GO
CREATE TABLE [dbo].[tmp_ms_xx_MyTempTable_HISTORY] (
Это работает даже с столбцами «GENERATED ALWAYS AS ROW START»? – gmn
В чем дело? Шаблон содержит столбцы периодов, и у них есть предложение 'GENERATED ALWAYS AS ROW START/END'. Вы можете изменить их имена до того, что захотите перед публикацией. –
- 1. Проект базы данных Visual Studio и aspnet_regsql.exe
- 2. Проект базы данных Cassandra в Visual Studio
- 3. Возможно ли обновить временные таблицы SQL Server 2016 из Access?
- 4. Вычисляемые столбцы в Azure SQL Server 2016 Временные таблицы
- 5. Проект Visual Studio «Сервер SQL Server 2008» по сравнению с «Проектом базы данных Sql Server 2008»?
- 6. SQL Server Management Studio 2016
- 7. Как обновить существующий проект базы данных Visual Studio 2012 SQL Server из базы данных?
- 8. Проекты базы данных в Visual Studio 2015 против SQL Server 2016
- 9. Visual Studio 2010 проект базы данных и генерация кода
- 10. Ошибка сборки проекта базы данных Visual Studio 2013 SQL Server
- 11. SQL server & Visual Studio
- 12. Скомпилировать проект «Проект базы данных SQL Server» в Visual Studio 2012 из командной строки?
- 13. sql server bulk insert и временные таблицы
- 14. Как создать проект SQL Server в Visual Studio 2015?
- 15. Как импортировать подмножество базы данных в проект visual studio 2013
- 16. Временные таблицы или переменные производительности SQL Server
- 17. Временные таблицы SQL Server 2005
- 18. Может ли проект базы данных Visual Studio 2015 опубликовать и SQL Server _and_ Azure?
- 19. Как удалить SQL Server Management Studio 2016?
- 20. SQL Server Присоединяйтесь временные таблицы и Pivot
- 21. Временные таблицы и репликация SQL Server
- 22. Visual Studio 2010 Проект базы данных SQL Server 2008 - пользовательские обновления
- 23. Как использовать проект базы данных SQL Server в других проектах в Visual Studio?
- 24. Ошибка создания базы данных SQL Server в Visual Studio
- 25. Как создать проект базы данных в Visual Studio 2013
- 26. C# Visual Studio нарушение PK для базы данных SQL Server
- 27. Скрипты создания базы данных SQL Server в Visual Studio
- 28. SQL Server CE и Visual Studio 2013
- 29. Visual Studio, проект базы данных, не подключенный к базе данных
- 30. Проект базы данных Visual Studio 2013 - развертывание/публикация - filegroup PRIMARY
Какую версию Visual Studio и SSDT вы используете? Что такое * точное * поведение? Вы хотите сказать, что попытка развертывания в существующей базе данных генерирует инструкции DROP для существующих столбцов без создания временных таблиц? Переход через временные таблицы * является самым безопасным вариантом –
Какие изменения вы пытались развернуть? –
Я не могу воспроизвести это. У SSDT уже есть шаблон для временных таблиц. Изменение таблицы генерирует ожидаемые инструкции модификации схемы, которые сначала копируют данные во временную таблицу, чтобы избежать потери данных. –