Я пытаюсь настроить проект базы данных SQL (с использованием Visual Studio 2017).
Я хочу, чтобы это создало dacpac, который мог бы работать на SQL Server или Azure SQL, создавало бы базу данных с нуля с одной публикацией.
Однако я сталкиваюсь с несколькими проблемами:
Я не могу создать таблицу, оптимизированную для памяти, если нет существующей базы данных (и таблиц). При запуске этого (SQL Server):
CREATE TABLE [dbo].[TicketReservationDetail] (
TicketReservationID BIGINT NOT NULL,
TicketReservationDetailID BIGINT IDENTITY NOT NULL,
Quantity INT NOT NULL,
FlightID INT NOT NULL,
Comment NVARCHAR (1000),
CONSTRAINT [PK_TicketReservationDetail] PRIMARY KEY NONCLUSTERED HASH
([TicketReservationDetailID]) WITH (BUCKET_COUNT=10000000)
) WITH (MEMORY_OPTIMIZED=ON);
GO
ALTER DATABASE [$(DatabaseName)] ADD FILEGROUP [mod] CONTAINS MEMORY_OPTIMIZED_DATA
Это дает мне это:
(63,1): SQL72014: .Net SqlClient Data Provider: Msg 10794, Level 16, State 125, Line 1 The operation 'AUTO_CLOSE' is not supported with databases that have a MEMORY_OPTIMIZED_DATA filegroup.
(63,0): SQL72045: Script execution error. The executed script:
ALTER DATABASE [$(DatabaseName)]
ADD FILEGROUP [mod] CONTAINS MEMORY_OPTIMIZED_DATA;
An error occurred while the batch was being executed.
Тем не менее, если я сначала опубликую таблицу дисков, то приведенный выше SQL будет работать просто отлично.
Я пробовал использовать сценарий предварительного развертывания, в котором я бы создал схему таблицы дисков,
Он публикует таблицу дисков и завершается неудачно, когда пытается опубликовать фактическую схему таблицы, оптимизированную для памяти.
Я использовал пример базы данных из: Заказ билетов
Любые идеи или предложения будут оценены.