From 22e711d08e32b8d871fe1050efa10f1a0bc69947 Mon Sep 17 00:00:00 2001 From: Tom Date: Thu, 9 May 2013 09:17:26 -0700 Subject: [PATCH] Removed [dbo] schema references, so that tables will be created in the default schema of the user running the script. Made EventStore table creation script match Ncqrs.Eventing.Storage.SQL.TableCreationScript.sql. --- Samples/MyNotes/MyNotesEventStore.sql | 124 +++++++++++++++++++------- Samples/MyNotes/MyNotesReadModel.sql | 30 ++++--- 2 files changed, 110 insertions(+), 44 deletions(-) diff --git a/Samples/MyNotes/MyNotesEventStore.sql b/Samples/MyNotes/MyNotesEventStore.sql index ccb79b55..e43353be 100644 --- a/Samples/MyNotes/MyNotesEventStore.sql +++ b/Samples/MyNotes/MyNotesEventStore.sql @@ -1,10 +1,10 @@ USE [master] GO -IF exists(SELECT * FROM sys.databases WHERE name = 'MyNotesEventStore') -BEGIN - DROP DATABASE [MyNotesEventStore] -END +IF EXISTS(SELECT * FROM sys.databases WHERE name = 'MyNotesEventStore') + BEGIN + DROP DATABASE [MyNotesEventStore] + END GO CREATE DATABASE [MyNotesEventStore] @@ -13,52 +13,116 @@ GO USE [MyNotesEventStore] GO -CREATE TABLE [dbo].[Events] +CREATE TABLE [EventSources] ( - [SequentialId] [int] IDENTITY(1,1) NOT NULL, - [Id] [uniqueidentifier] NOT NULL, - [TimeStamp] [datetime] NOT NULL, - - [Name] [varchar](max) NOT NULL, - [Version] [varchar](max) NOT NULL, + [Id] [uniqueidentifier] NOT NULL, + [Type] [nvarchar](255) NOT NULL, + [Version] [int] NOT NULL +) ON [PRIMARY] +GO - [EventSourceId] [uniqueidentifier] NOT NULL, - [Sequence] [bigint], +CREATE UNIQUE NONCLUSTERED INDEX [IX_Id] ON [EventSources] +( + [Id] ASC +) +WITH +( + PAD_INDEX = OFF, + STATISTICS_NORECOMPUTE = OFF, + SORT_IN_TEMPDB = OFF, + IGNORE_DUP_KEY = OFF, + DROP_EXISTING = OFF, + ONLINE = OFF, + ALLOW_ROW_LOCKS = ON, + ALLOW_PAGE_LOCKS = ON +) ON [PRIMARY] +GO - [Data] [nvarchar](max) NOT NULL - CONSTRAINT [PK_Events] PRIMARY KEY CLUSTERED +CREATE TABLE [Events] +( + [SequentialId] [int] IDENTITY(1,1) NOT NULL, + [Id] [uniqueidentifier] NOT NULL, + [TimeStamp] [datetime] NOT NULL, + [Name] [varchar](max) NOT NULL, + [Version] [varchar](max) NOT NULL, + [EventSourceId] [uniqueidentifier] NOT NULL, + [Sequence] [bigint] NULL, + [Data] [nvarchar](max) NOT NULL, + CONSTRAINT [PK_Events] PRIMARY KEY CLUSTERED ( [SequentialId] ASC ) + WITH + ( + PAD_INDEX = OFF, + STATISTICS_NORECOMPUTE = OFF, + IGNORE_DUP_KEY = OFF, + ALLOW_ROW_LOCKS = ON, + ALLOW_PAGE_LOCKS = ON + ) ) ON [PRIMARY] GO -CREATE TABLE [dbo].[EventSources] -( - [Id] [uniqueidentifier] NOT NULL, [Type] [nvarchar](255) NOT NULL, [Version] [int] NOT NULL -) ON [PRIMARY] +CREATE NONCLUSTERED INDEX IX_EventSourceId ON [Events] (EventSourceId) +GO + +ALTER TABLE [Events] + ADD CONSTRAINT UQ_Events_Id UNIQUE ([Id]) GO -CREATE TABLE [dbo].[Snapshots] +ALTER TABLE [Events] WITH CHECK + ADD CONSTRAINT [FK_Events_EventSources] FOREIGN KEY([EventSourceId]) + REFERENCES [EventSources] ([Id]) +GO + +ALTER TABLE [Events] + CHECK CONSTRAINT [FK_Events_EventSources] +GO + +CREATE TABLE [Snapshots] ( - [EventSourceId] [uniqueidentifier] NOT NULL, [Version] [bigint], [TimeStamp] [datetime] NOT NULL, - [Type] varchar(255) NOT NULL, [Data] [varbinary](max) NOT NULL + [EventSourceId] [uniqueidentifier] NOT NULL, + [Version] [bigint] NULL, + [TimeStamp] [datetime] NOT NULL, + [Type] varchar(255) NOT NULL, + [Data] [varbinary](max) NOT NULL ) ON [PRIMARY] GO -CREATE TABLE [dbo].[PipelineState]( - [BatchId] [int] IDENTITY(1,1) NOT NULL, - [PipelineName] [varchar](255) NOT NULL, - [LastProcessedEventId] [uniqueidentifier] NOT NULL, +ALTER TABLE [Snapshots] WITH CHECK + ADD CONSTRAINT [FK_Snapshots_EventSources] FOREIGN KEY([EventSourceId]) + REFERENCES [EventSources] ([Id]) +GO + +ALTER TABLE [Snapshots] + CHECK CONSTRAINT [FK_Snapshots_EventSources] +GO + +CREATE TABLE [PipelineState] +( + [BatchId] [int] IDENTITY(1,1) NOT NULL, + [PipelineName] [varchar](255) NOT NULL, + [LastProcessedEventId] [uniqueidentifier] NOT NULL, CONSTRAINT [PK_MainPipelineState] PRIMARY KEY CLUSTERED ( [BatchId] ASC ) WITH ( - PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, - IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, - ALLOW_PAGE_LOCKS = ON + PAD_INDEX = OFF, + STATISTICS_NORECOMPUTE = OFF, + IGNORE_DUP_KEY = OFF, + ALLOW_ROW_LOCKS = ON, + ALLOW_PAGE_LOCKS = ON ) ) ON [PRIMARY] -GO \ No newline at end of file +GO + +ALTER TABLE [PipelineState] WITH CHECK + ADD CONSTRAINT [FK_PipelineState_Events] FOREIGN KEY([LastProcessedEventId]) + REFERENCES [Events] ([Id]) +GO + +ALTER TABLE [PipelineState] + CHECK CONSTRAINT [FK_PipelineState_Events] +GO diff --git a/Samples/MyNotes/MyNotesReadModel.sql b/Samples/MyNotes/MyNotesReadModel.sql index 5436db4f..e285b028 100644 --- a/Samples/MyNotes/MyNotesReadModel.sql +++ b/Samples/MyNotes/MyNotesReadModel.sql @@ -1,10 +1,10 @@ USE [master] GO -IF exists(SELECT * FROM sys.databases WHERE name = N'MyNotesReadModel') -BEGIN - DROP DATABASE [MyNotesReadModel] -END +IF EXISTS(SELECT * FROM sys.databases WHERE name = N'MyNotesReadModel') + BEGIN + DROP DATABASE [MyNotesReadModel] + END GO CREATE DATABASE [MyNotesReadModel] @@ -13,17 +13,19 @@ GO USE [MyNotesReadModel] GO -CREATE TABLE [dbo].[NoteItemSet]( - [Id] [uniqueidentifier] PRIMARY KEY, - [Text] [varchar](250) NULL, - [CreationDate] [datetime] NULL +CREATE TABLE [NoteItemSet] +( + [Id] [uniqueidentifier] PRIMARY KEY, + [Text] [varchar](250) NULL, + [CreationDate] [datetime] NULL ) ON [PRIMARY] GO -CREATE TABLE [dbo].[TotalsPerDayItemSet] ( - [Id] int IDENTITY(1,1) PRIMARY KEY, - [Date] datetime NOT NULL, - [NewCount] int NOT NULL, - [EditCount] int NOT NULL -); +CREATE TABLE [TotalsPerDayItemSet] +( + [Id] [int] IDENTITY(1,1) PRIMARY KEY, + [Date] [datetime] NOT NULL, + [NewCount] [int] NOT NULL, + [EditCount] [int] NOT NULL +) ON [PRIMARY] GO \ No newline at end of file