Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Chiave primaria composita + chiave esterna

Sì, puoi:

CREATE TABLE [dbo].[VariableMappings](
    [ParentSurvey_ID] [nvarchar](4) NOT NULL,
    [ReportingMonth] [nvarchar](6) NOT NULL,
    [VariableName] [nvarchar](400) NOT NULL,
    [Value] [int] NOT NULL,
  PRIMARY KEY (ParentSurvey_ID, ReportingMonth, VariableName),
  FOREIGN KEY (ParentSurvey_ID)
    REFERENCES dbo.SurveyMaster (ID)
) ;

Per lo più irrilevante per il tuo problema, ma con una PRIMARY KEY che è così ampio (410 nvarchars) non è l'idea migliore.