Se eu tiver uma tabela como esta,
CREATE TABLE [dbo].[StreetLight](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Description] [nvarchar](50) NOT NULL,
[Shape] [geometry] NOT NULL,
CONSTRAINT [PK_StreetLight] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
Qual estrutura é ideal para usar para vincular as luzes da rua de forma relacional. Por exemplo, tenho os postes de luz 1, 2, 3, 4, 5, 6 e quero dizer que os postes de luz 6 e 2 estão relacionados. Eles podem estar na mesma rua, por exemplo.
Quais são as maneiras que eu posso fazer isso?
Eu recomendaria adicionar outra tabela,
StreetLightGrouping
. Esta tabela deve ter duas colunasStreetLightGroupId
eStreetLightId
. Todos osStreetLights
menoresStreetLightGroupId
fazem parte do mesmo grupo.Além disso, se a
StreetLight
pode pertencer a no máximo um grupo, uma restrição única pode ser estabelecida naStreetLightId
coluna.